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

3
我想在IIS和自托管环境中托管我的WebApi项目。在我的研究中,对于IIS托管,我找到了以下两个包:
1- Microsoft.AspNet.WebApi.WebHost (源代码)
这个包包含了你需要在IIS上托管ASP.NET Web API的所有内容。
2- Microsoft.Owin.Host.SystemWeb (源代码)
这是一个OWIN服务器,可以使基于OWIN的应用程序在使用ASP.NET请求管道的情况下运行在IIS上。
我的WebApi应用程序可以使用它们两个在IIS中加载。那么问题是这两个包有什么区别,在什么情况下应该使用它们。
附言: 在某些情况下,使用第二个包进行托管时会出现错误。
1个回答

2

如果您想在OWIN pipeline上托管Web.API,并且正在IIS上托管此pipeline(例如,在控制台应用程序内部自托管时不需要此内容),则需要此软件包Microsoft.Owin.Host.SystemWeb

另一个软件包是针对“经典”Web.API hosting,与OWIN本身无关。

我猜您想运行OWIN(因为您也在自托管),因此需要第二个软件包。

顺便说一下,Microsoft.AspNet.WebApi.WebHost的OWIN等效物是Microsoft.AspNet.WebApi.Owin


1
顺便提一下,Microsoft.AspNet.WebApi.WebHost的OWIN等效版本是Microsoft.AspNet.WebApi.Owin。这两个包有什么区别? - Mazen Elkashef

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接