从VS发布到Azure时无法更改目标运行时

从VS发布到Azure时无法更改目标运行时,azure,asp.net-core,Azure,Asp.net Core,我有一个ASP.Core RC2项目(.NET 4.5.1框架),应该作为x86网站部署在Azure上 在VS中的“发布设置”选项卡上,有以下值: 目标框架:.NET Framework 4.5.1 目标运行时:推断运行时(win7-x64) 我想将“目标运行时”的值更改为x86平台,但此组合框处于非活动状态(灰色) 当前project.json: { "version": "1.0.0-*", "dependencies": { "Microsoft.NETCore.Platform

我有一个ASP.Core RC2项目(.NET 4.5.1框架),应该作为x86网站部署在Azure上

在VS中的“发布设置”选项卡上,有以下值:

  • 目标框架:.NET Framework 4.5.1
  • 目标运行时:推断运行时(win7-x64)
我想将“目标运行时”的值更改为x86平台,但此组合框处于非活动状态(灰色)

当前project.json:

{
"version": "1.0.0-*",

"dependencies": {
  "Microsoft.NETCore.Platforms": "1.0.1-*",
  "Microsoft.AspNetCore.Server.IISIntegration": "1.0.0-rc2-final",
  "Microsoft.AspNetCore.Mvc": "1.0.0-rc2-final",
  "Microsoft.AspNetCore.Server.Kestrel": "1.0.0-rc2-final",
  "Microsoft.AspNetCore.StaticFiles": "1.0.0-rc2-final",
  "Microsoft.AspNetCore.Diagnostics": "1.0.0-rc2-final"
},

"commands": {
  "web": "Microsoft.AspNet.Server.Kestrel"
},

"buildOptions": {
  "emitEntryPoint": true
},

"frameworks": {
  "net451": { }
},

"publishOptions": {
  "include": [
    "appsettings.json",
    "project.json",
    "web.config",
    "NlogWeb.config"
  ]
},
"tools": {
  "Microsoft.AspNetCore.Server.IISIntegration.Tools": {
    "version": "1.0.0-*",
    "imports": "portable-net45+wp80+win8+wpa81+dnxcore50"
  }
},
"scripts": {
  "postpublish": "dotnet publish-iis --publish-folder %publish:OutputPath% --framework %publish:FullTargetFramework%"
}
}

在开发自包含应用程序时,必须将所有必需的运行时添加到
project.json
文件中,以便nuget/
dotnet restore
可以在还原时下载运行时文件

win7-x86
运行时添加到
project.json
应该可以做到这一点

"runtimes": {
    "win7-x64": { }, 
    "win7-x86": { } 
}

当您以便携式应用程序为目标时,您不需要运行时部分,但您必须自己在目标计算机上安装运行时。有关可移植性类型如何工作和配置的更详细说明,请参阅文档。

Post your project.json。您有win7-x86的运行时标识符吗?它应该是
“运行时”:{“win7-x64”:{},“win7-x86”:{},
。如果您只有
win7-x64
,那么nuget将不会恢复我添加的project.json内容所需的包(对于自包含的应用程序)。没有“运行时”部分,我会尝试使用它。@Tseng谢谢,添加“运行时”对我很有用。请将您的评论作为答案发布,我将接受。@Chet:我已经更新了链接。当.NETCore攻击RTM时,旧的github文档被删除。它现在位于MSDN上