MVC 3.0基础 - 在IIS服务器上安装MVC3.0?

时间:2012-08-28 12:13:29

标签: asp.net-mvc

我需要将mvc3.0(.net 4.0)应用程序部署到Windows Server 2008。

有人可以帮我解决下面的问题吗?

  1. 如果我引用了所有MVC dll(Copy Local设置为true,我是否需要在服务器上安装MVC 3.0)

  2. 如果我在Web服务器上安装了MVC 2.0,那么在上面的步骤1场景中,IIS会选择MVC2.0 dll还是MVC 3?

  3. IIS何时查看DLL与BIN文件夹?

  4. 谢谢你。

3 个答案:

答案 0 :(得分:3)

  

1。)如果我引用了所有MVC dll(Copy Local设置为true,我是否需要在服务器上安装MVC 3.0)

不,您可以bin deploy申请。

  

2.。)如果我在Web服务器上安装了MVC 2.0,那么在上面的步骤1场景中IIS是否会选择MVC2.0 dll或MVC 3?

假设您在web.config中放置了正确的assembly binding redirects它将选择MVC 3:

<runtime>
   <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
     <dependentAssembly>
       <assemblyIdentity name="System.Web.Mvc"
           publicKeyToken="31bf3856ad364e35"/>
       <bindingRedirect oldVersion="1.0.0.0-2.0.0.0" newVersion="3.0.0.0"/>
     </dependentAssembly>
   </assemblyBinding>
</runtime>
  

3.。)IIS何时查看DLL与BIN文件夹?

当应用程序启动时,或首次需要时(假设某些程序集可以在运行时动态加载)。

答案 1 :(得分:1)

  

如果我引用了所有MVC dll,是否需要在服务器上安装MVC 3.0   (将Copy Local设置为true?)

不必要。您可以在服务器中安装MVC而无需安装MVC。 Visual Studio中有一个叫做可部署依赖项的东西。这将在发布时将您的MVC DLL发布到bin文件夹中

来自msdn页面,

  

这会将程序集(DLL文件)添加到网站项目或Web   应用项目。当您部署您的网站或应用程序时,   文件包含在已部署的项目中。如果,这很有用   您的项目所依赖的应用程序或技术不是   已安装在将托管您的Web项目的服务器上。对于   例如,您可以使用此功能部署ASP.NET MVC 3 Web   应用程序到没有安装ASP.NET MVC 3的服务器。

结帐this回答我已经逐步说明如何执行此操作。

查看此帖子了解更多详情http://haacked.com/archive/2011/05/25/bin-deploying-asp-net-mvc-3.aspx

您应该 Visual Studio 2010 SP1 。否则,当您右键单击要发布的项目时,它将不会显示在上下文菜单中。

答案 2 :(得分:0)

  1. 已经问过,请参阅 - ASP.NET MVC deployment in a form of distribution package

  2. 它将获得您用于构建应用程序的确切版本

  3. 本地程序集优先于GAC(全局程序集缓存)

相关问题