我的基本.Net 4.5 MVC4 Web Api应用程序在我的开发机器上的IIS上运行良好,但是当我尝试在没有安装Visual Studio的生产机器上部署和运行时,我收到以下消息:
无法加载文件或程序集“Microsoft.Web.Infrastructure,Version = 1.0.0.0,Culture = neutral,PublicKeyToken = 31bf3856ad364e35”或其中一个依赖项。系统找不到指定的文件。
服务器正在运行带有IIS7的Windows Server 2008 R2,并且已安装.Net 4.5。
我在项目中安装了大量的NuGet软件包,这些软件包直接来自MVC4 Web Api项目模板,包括Microsoft.Web.Infrastructure。它没有被我的项目引用,但似乎是依赖项的依赖项,或者其他东西。
我在https://stackoverflow.com/a/9593577/326110读到,因为它正在使用NuGet(至少他们在讨论使用NuGet的MVC3),它应该自动进行bin-deployable,所以我不知道从哪里开始。
如果我手动将我的NuGet包文件夹中的Microsoft.Web.Infrastructure.dll复制到服务器上的bin文件夹,它可以正常工作,但显然这似乎不是正确的方法:(