.net 为什么runtimeconfig.json包含includedFrameworks而不是框架?

yr9zkbsy  于 2023-03-13  发布在  .NET
关注(0)|答案(1)|浏览(74)

"你好"
我有一个AspNet Core应用程序,它是这样发布的:

dotnet publish -c release MyApplication.csproj

问题是所生成的MyApplication.runtimeconfig.json剂量包含includedFrameworks标签而不是frameworks
这是我得到的:

{
  "runtimeOptions": {
    "tfm": "net5.0",
    "includedFrameworks": [
      {
        "name": "Microsoft.NETCore.App",
        "version": "5.0.10"
      },
      {
        "name": "Microsoft.AspNetCore.App",
        "version": "5.0.10"
      }
    ],
    "configProperties": {
      "System.GC.Server": true,
      "System.Runtime.Serialization.EnableUnsafeBinaryFormatterSerialization": false
    }
  }
}

但我希望

{
  "runtimeOptions": {
    "tfm": "net5.0",
    "frameworks": [         // <-------------
      {
        "name": "Microsoft.NETCore.App",
        "version": "5.0.10"
      },
      {
        "name": "Microsoft.AspNetCore.App",
        "version": "5.0.10"
      }
    ],
    "configProperties": {
      "System.GC.Server": true,
      "System.Runtime.Serialization.EnableUnsafeBinaryFormatterSerialization": false
    }
  }
}

谁能告诉我为什么dotnet要这么做,bzw如何以正确的方式生成它?
谢谢你的帮助!💪🙏

a8jjtwal

a8jjtwal1#

解决方案是添加以下参数:

dotnet publish -c Release -p:UseAppHost=false --self-contained false

在我的例子中,应用程序驻留在IIS中。

相关问题