簡體   English   中英

在visual studio 2015下以x86開始一個asp.net核心項目

[英]Start an asp.net core project as x86 under visual studio 2015

我有一個包含asp.net核心項目的vs2015解決方案,並將其project.json配置如下:

{
  "buildOptions": {
    "emitEntryPoint": true,
    "preserveCompilationContext": true,
    "platform": "x86"
  },
  "runtimes": {
    "win10-x86": {}
  },
  "frameworks": {
    "net461": {}
  },
  "commands": {
    "web": "Microsoft.AspNet.Hosting --ASPNET_ENV production --server Microsoft.AspNet.Server.Kestrel --server.urls http://+:12345",
  }
  [...]
}

我期待應用程序使用project.json中指定的平台構建和運行(僅供參考,我在win10 / x64框上通過vs2015調試器運行應用程序) 但是,使用win7-x64運行時代替。 我可以看到一個win7-x64輸出目錄,啟動的提示標題也表明它。

如果我通過指定運行時的命令行直接構建和運行,它就可以工作。

所以我的問題是,我還需要配置什么來從vs2015啟動x86中的asp.net核心應用程序?

有兩種選擇:

  1. (全局)卸載64位.net SDK並安裝32位。 之后重啟VS.
  2. (本地)將新的.net SDK放在不同的文件夾中,並從控制台添加到PATH的路徑。 然后從那里開始VS. 它將選擇它在PATH上找到的第一個dotnet。

Victor Hurdugaci的答案應該被贊成,這里只是提供了一些更多的信息,以備你需要時使用。

當您安裝了x86和x64 .NET Core版本時,似乎存在一個工具問題(此處有更多相關信息: 32位處於良好狀態和解決方法以及鏈接)。

將“buildOptions”設置為“platform”:“x86”和“runtimes”:到project.json中的“win7-x86”不起作用(x64目錄仍然可以在構建期間根據PATH環境變量創建)。

希望它們在從project.json切換到.csproj之后得到修復(為什么他們在這里更改它: 對Project.json的更改 )。

在您安裝這兩個版本的時刻( .NET Framework下載 ):

在此輸入圖像描述

您需要在路徑環境變量中設置順序:

在此輸入圖像描述

這樣你想要使用的那個首先出現然后(重新)啟動 Visual Studio。

要檢查哪個dotnet當前處於“活動狀態”,請運行:dotnet --info在控制台中。

這對我有用:

一小時前,visual studio 2015團隊發布了一個標有“ Microsoft Visual Studio 2015 Update 3(KB3165756) ”的新更新

安裝后,一切都按預期工作。

非常感謝MS和.net核心/ vs2015團隊為這個非常及時的發布:)


附錄:

安裝更新是不夠的(雖然我懷疑它是修復的一部分)。 要使這項工作的其他步驟,您需要遵循@VictorHurdugaci指令:

  1. 確保已安裝.86 SDK的x86版本

  2. 並確保PATH為了“C:\\ Program Files文件(x86)的\\ DOTNET \\”之前的“C:\\ Program Files文件\\ DOTNET \\”當你安裝新的包,它不能保證運行時(我想保持於x86和x64運行時)

感謝VictorHurdugaci,在一天結束時你絕對正確。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM