[英]Running MVC6 Beta8 app on IIS Express
我刚刚更新到MVC6 Beta8。 几个小时后修复代码再次编译,我遇到了一个问题,即应用程序无法在IIS Express下运行。 我收到此错误消息:
[TypeLoadException:无法从程序集'Microsoft.Dnx.Host.Clr,Version = 1.0.0.0,Culture = neutral,PublicKeyToken = adb9793829ddae60'加载类型'Microsoft.Dnx.Host.Clr.EntryPoint'。] System.Web.HttpRuntime .HostingInit(HostingEnvironmentFlags hostingFlags,PolicyLevel policyLevel,Exception appDomainCreationException)+303
[HttpException(0x80004005):无法从程序集“Microsoft.Dnx.Host.Clr,Version = 1.0.0.0,Culture = neutral,PublicKeyToken = adb9793829ddae60'。]系统加载”Microsoft.Dnx.Host.Clr.EntryPoint“类型。 Web.HttpRuntime.FirstRequestInit(HttpContext context)+9922864 System.Web.HttpRuntime.EnsureFirstRequestInit(HttpContext context)+90 System.Web.HttpRuntime.ProcessRequestNotificationPrivate(IIS7WorkerRequest wr,HttpContext context)+261
我知道主机架构有变化。 但这是否意味着我们不能再使用IIS express了,或者仅仅是更新或配置更改的问题?
在升级到beta8时,您需要考虑IIS / IIS Express托管模型的一些重大更改。
在project.json文件中,从依赖项中删除它们:
将以下内容添加到依赖项:
最后,在Startup.cs文件中,将以下内容添加到Configure方法:
app.UseIISPlatformHandler();
(我假设app
是您的IApplicationBuilder的名称,您可以相应地进行调整)。
这会将新的IISPlatformHandler添加到管道并将流量定向到Kestrel服务器,从而绕过IIS和旧的Helios dnx主机。
您可以在Github的公告中了解此更改
以下是我解决问题的方法:
我无法弄清楚如何修改现有项目。
升级到beta 8后我遇到了同样的问题,并通过从project.json
删除以下依赖项来解决它:
"Microsoft.AspNet.Server.IIS": "1.0.0-beta7"
"Microsoft.AspNet.Server.WebListener": "1.0.0-beta7"
并添加以下依赖项:
"Microsoft.AspNet.Server.Kestrel": "1.0.0-beta8"
我也更新了所有项目引用从beta7
到beta8
。
希望这可以帮助。
这是我的方式。 有人可以找到有用的东西。 我将这些行添加到我的project.json中:
"Microsoft.AspNet.IISPlatformHandler": "1.0.0-beta8",
"Microsoft.AspNet.Server.WebListener": "1.0.0-beta8",
"Microsoft.AspNet.Server.Kestrel": "1.0.0-beta8",
我改变了命令:
"commands": {
"web": "Microsoft.AspNet.Hosting --config hosting.ini",
},
对此:
"commands": {
"web": "Microsoft.AspNet.Hosting server=Microsoft.AspNet.Server.WebListener --server.urls http://localhost:5000",
"kestrel": "Microsoft.AspNet.Server.Kestrel",
},
然后dnu restore
现在,您可以使用dnx web
或dnx kestrel
命令运行asp.net应用程序。 这里描述了不同之处: https : //github.com/aspnet/Home/wiki/Servers
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.