Microsoft.Owin.Host.SystemWeb和Microsoft.AspNet.WebApi.WebHost nuget包之间的区别

时间:2016-04-13 05:56:28

标签: iis asp.net-web-api owin

我想在WebApi和自我主机上下文中托管我的IIS项目。在我的研究中,对于IIS托管,我找到了这两个包:

1- Microsoft.AspNet.WebApi.WebHost(src

  

此软件包包含承载ASP.NET Web API所需的所有内容   IIS

2- Microsoft.Owin.Host.SystemWeb(src

  

OWIN服务器,它允许基于OWIN的应用程序在IIS上运行   ASP.NET请求管道。

我的WebApi应用可以在IIS中同时加载。所以问题是这两个包之间有什么区别以及我应该使用它们的条件。

P.S。 在某些情况下托管第二个软件包时出现错误。

1 个答案:

答案 0 :(得分:2)

如果您想在OWIN pipeline上托管Web.API并且您在IIS上托管此管道,则需要此软件包 Microsoft.Owin.Host.SystemWeb (您不需要#39 ; t需要这个用于自托管,例如在控制台应用程序内部。)

另一个是#34; classic" Web.API hosting并且与OWIN本身无关。

我想你想要运行OWIN(因为你也自己托管),所以你需要第二个。

BTW, Microsoft.AspNet.WebApi.WebHost 的OWIN等价物是 Microsoft.AspNet.WebApi.Owin