我使用ASP.NET Core 2.0构建了一个API,我希望将其发布以在IIS 8(Windows Server 2012)中运行并托管它。我发现以下文章解释了将其发布到IIS:
https://stackify.com/how-to-deploy-asp-net-core-to-iis/
但它需要在主机上安装.NET Core Windows Server Hosting Bundle,我不希望在主机上安装它。
我想知道是否有办法将ASP.NET Core 2.0应用程序发布到" pure" .NET 4.6.1或4.6.2应用程序,以便我可以在IIS中运行它,而无需安装其他.NET Core托管依赖项。
答案 0 :(得分:2)
简答:不。您的项目本身必须以完整框架为目标。这实际上是为完整框架发布它,因为目标会影响构建。关键在于,如果您认为可以将其定位到.NET Core,但以某种方式发布到.NET 4.6,则无法做到这一点。
那就是说,我认为你走的是一条糟糕的道路。目标.NET 4.6的唯一良好原因是,如果您需要在.NET Core中无法从完整框架中获取特定内容。即使您打算今天发布到IIS,能够发布到Nginx或其他网络服务器,相反,甚至是Mac或Linux也是值得的。只需安装托管包即可。无论如何,有什么大不了的?