程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> 關於.NET >> DotNetCore.1.0.1-VS2015Tools.Preview2.0.3 相關問題及解決辦法,enablepreviewtools

DotNetCore.1.0.1-VS2015Tools.Preview2.0.3 相關問題及解決辦法,enablepreviewtools

編輯:關於.NET

DotNetCore.1.0.1-VS2015Tools.Preview2.0.3 相關問題及解決辦法,enablepreviewtools


本月16號,MS發布了 .NET Core 1.1。作為一個用貫MS產品的小盆友,我第一時間就把相關的安裝包下載下來了,然後果斷安裝(入坑)。

我猜你來看這篇博客可能遇到了和我一樣的問題。

問題0:正確的安裝順需

正確的順序在MS的dotnet Core官網上可以找到,請根據自己的VS版本對號入座。

如果你覺得這個太長或者存在疑問,簡短的版本是:

1、VS2015

 

   1. 檢查VS2015 是否已經安裝了Update3.3:打開VS2015,然後點擊【幫助】-【關於Microsoft Visual Studio】,左側Logo下面的版本號如果小於14.0.25431.01,需要安裝Update3.3;如果版本號後不是Update3,則需要先安裝Update3,然後安裝Update3.3.

 

   2. 下載安裝  .NET Core 1.1 SDK (x64 / x86)

 

   3. 下載安裝DotNetCore.1.0.1-VS2015Tools.Preview2.0.3

2、VS2017RC

 

   安裝的時候選中【NET Core and Docker (Preview)】即可

由於VS2017安裝的是DotnetCore1.0.0-preview3-004056,而且使用csproj格式的項目文件,所以和VS2015的體驗會存在差異,安裝前請三思。

 

問題1:DotNetCore.1.0.1-VS2015Tools.Preview2.0.3文件安裝不正常

這個問題在9月份發布1.0.1的時候,估計很多人都遇到了。從現象上看似乎是MS忘記更換自家已經被吊銷的SSL證書了,當然不排除被GFW不小心干掉的可能。好在經過兩個多月的不懈努力,這個證書似乎已經正常了,所以現在主要拼的是網速了。

如果你的網絡環境不理想,可以在網速較好的環境下獲取DotNetCore.1.0.1-VS2015Tools.Preview2.0.3的脫機布局,然後分發安裝,具體的方法如下:

 

命令格式

  \>DotNetCore.1.0.1-VS2015Tools.Preview2.0.3.exe /layout <布局存放的目錄>

sample:

  \>DotNetCore.1.0.1-VS2015Tools.Preview2.0.3/exe /layout .\DotnetCoreTooling110

按照上圖的方式執行,可以在當前目錄創建一個DotnetCoreTooling110目錄,你只要運行這個新創建目錄下的DotNetCore.1.0.1-VS2015Tools.Preview2.0.3.exe文件就可以放心安裝了。

 

問題2:創建、升級現有項目

因為這次發布的是SDK和Tooling,沒有更新模板,所以現有Dotnet Core項目所使用的模板還是原來1.0.1的。不過不用擔心,ASP.NET Core 1.1 RTM的介紹裡具體的模板升級方法:

 

1、project.json文集按中的【netcoreapp】和【Microsoft.NetCore.App】版本從1.0 升級到1.1,然後保存project.json文件

2、升級Dependency中的nuget包,建議升級前先備份一下現有的project.json文件。因為我曾經遇到過升級失敗,還把project文件弄壞的情況。有備無患嘛。

 

問題3:升級後編譯失敗,提示無法找到運行時針對的框架“.NetCoreApp,Version=1.1”兼容的運行時

VS報錯後,還給了我們三個錯誤的可能誘因。第一個不考慮了,因為沒有還原所有nuget包的話,說明項目的狀態還停留在問題2。如果確認了真的是還原失敗,則應該繼續求改project.json文件。
第二個方法和第三個方法實際上原理一樣,就是希望開發人員給出一個RID,這樣VS就知道對應的運行環境是什麼了。但是這樣做就把現在的一個FDD(依賴框架的部署)程序變成了SCD(獨立部署)程序。

這裡就不討論兩種部署的優劣了,因為那和比較C#和JAVA的優劣一樣無趣,只展示一下如何實現:

FDD,其實圖1就是使用的這種部署,只是寫法稍稍有些不同:

 

{
  "dependencies": {
    "Microsoft.NETCore.App": {
      "version": "1.1.0",
      "type": "platform"
    },

    ……
  }
  "frameworks": {
    "netcoreapp1.1": {
      "imports": [
        "dotnet5.6",
        "portable-net45+win8"
      ]
    }
  }
}

 

SCD,重點是增加runtimes,frameworks,dependencies都不需要變:

 

{
  "frameworks": {
    "netcoreapp1.1": {
      "imports": [
        "dotnet5.6",
        "portable-net45+win8"
      ]
    }
  },
  "runtimes": {
    "win10-x64": {}
  }
}

結束語

以上是一周以來嘗鮮DotnetCore1.1遇到的問題及解決辦法,希望可以幫助到大家,並盡快體驗1.1帶來的759倍性能提升(雖然只是文本輸出測試,但也是可部署服務器中的第一啊)

 

作者:張君毅

博客:https://www.cnblogs.com/soldout

本文版權歸作者和博客園共有,歡迎轉載,但未經作者同意必須保留此段聲明,且在文章頁面明顯位置給出原文連接,否則保留追究法律責任的權利。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved