我在Visual 2015中做了一个“空”ASP.Net 5项目。project.json文件包含以下行
"dependencies": {
"Microsoft.AspNet.IISPlatformHandler": "1.0.0-rc1-final",
"Microsoft.AspNet.Server.Kestrel": "1.0.0-rc1-final"
},
"commands": {
"web": "Microsoft.AspNet.Server.Kestrel"
},我正在Windows 10开发PC上进行测试,并计划部署到Azure,因此,按照服务器上的文档中的建议,我想使用IIS而不是Kestrel。
然而,撕毁Kestrel并不是简单的事情。首先,我从project.json文件中删除与Kestrel相关的行:
"dependencies": {
"Microsoft.AspNet.IISPlatformHandler": "1.0.0-rc1-final",
},
"commands": {
},这无法生成多个错误(名称空间‘Microsoft.AspNet’中不存在“类型或名称空间名称‘宿主’”、“名称空间名称'DependencyInjection‘在名称空间’Microsoft.Extensions‘中不存在”、“无法找到类型或名称空间名称'IServiceCollection’”和“名称'WebApplication‘在当前上下文中不存在”),因此我添加了dependencies来修复错误,并给出了以下内容(成功构建)
"dependencies": {
"EntityFramework.Core": "7.0.0-rc1-final",
"Microsoft.AspNet.Hosting": "1.0.0-rc1-final",
"Microsoft.AspNet.IISPlatformHandler": "1.0.0-rc1-final",
"Microsoft.Extensions.DependencyInjection.Abstractions": "1.0.0-rc1-final"
},
"commands": {
},但是,它不运行--只是无限期地挂起,但它还将行"web": "Microsoft.AspNet.Server.Kestrel"添加回project.json中的commands中。
如果我不想使用dependencies / IIS,那么"Hello“ASP.Net 5项目中project.json文件的project.json和ASP.Net部分应该是什么样的呢?
发布于 2015-12-15 11:37:29
按照服务器上的文档中的建议,我想使用IIS而不是Kestrel。
这个文档有点过时了。您必须使用Kestrel或其他支持asp.net 5的http侦听器。
简单地说,IIS上的启动是通过IISPlatformHandler模块启动的,该模块可以处理http侦听器,比如Kestrel。
https://stackoverflow.com/questions/34286534
复制相似问题