Windows Server 2008 R2与.Net Core应用程序共同托管旧版.Net应用程序

时间:2017-03-01 21:46:53

标签: c# asp.net iis asp.net-core .net-4.0

我有一台运行Windows Server 2008 R2的服务器。它目前在IIS中运行几个ASP.NET 4.5.2应用程序。

我有一个新的ASP.Net核心应用程序,我想在同一台服务器上部署到IIS。

  1. 这可能吗?
  2. 为了使其有效,我需要做些什么?
  3. 在我的.Net核心应用程序中,我在主要方法中有以下内容:

    public static void Main(string[] args)
    {
        var host = new WebHostBuilder()
            .UseKestrel()
            .UseContentRoot(Directory.GetCurrentDirectory())
            .UseIISIntegration()
            .UseStartup<Startup>()
            .UseStructureMap()
            .Build();
    
        host.Run();
    }
    

    我的project.json

    中也有以下内容
    "Microsoft.NETCore.App": {
      "version": "1.1.0"
    },
    "runtimes": {
      "win7-x64": {}
    }
    

    我想确保我的.Net Core和我的遗留.Net Framework应用程序不会相互冲突。

1 个答案:

答案 0 :(得分:1)

我可以通过以下教程来实现这一目标:https://docs.microsoft.com/en-us/aspnet/core/publishing/iis

关键是,当我在服务器上安装.NET Core Windows Server Hosting Bundle时,我没有安装.Net Core运行时,因为我的.Net Core应用程序是自包含的。我通过从命令行安装Hosting Bundle并使用以下命令

来完成此操作
DotNetCore.1.0.3_1.1.0-WindowsHosting.exe OPT_INSTALL_LTS_REDIST=0 OPT_INSTALL_FTS_REDIST=0