2015-09-07 36 views
1

我有點困惑在ASP.Net如何理解「DNX SDK」,並在Asp.Net 5項目的「框架」

  1. 我們可以設置的下一個版本的一些術語默認DNX版本在DNVM
  2. 我們可以指定在
  3. 我們可以在項目中設置的框架(dnx451,dnxcore50)
  4. 我們可以在屬性頁面上指定的運行時解決方案的global.json DNX SDK版本的Web應用程序項目。

這些設置如何在開發機器上工作(即安裝了多少版本的dnx)和生產機器?

感謝 弗蘭克

+0

你有什麼版本的ASP.NET Beta?你有沒有更新到最新的1.0.0-Beta7?在生產中,事情就像他們在開發中一樣。 DNX SDK作爲應用程序的一部分發布,而不是作爲Windows本身的組件發佈。這是DNX存在的核心原因。 –

+0

謝謝!我正在使用beta7,但我不明白什麼是global.json中的sdk版本project.json中的框架vs項目屬性頁上的運行時 – frank

+0

項目屬性頁面控制着IDE中的工具。我相信,global.json的內容旨在成爲主人。爲什麼你會想讓這些合法的不同,我不明白。我認爲他們必須始終保持一致,因此我相信,如果Tooling(ASP.NET的IDE插件)讓他們進入不同的地方,那就是一個bug。但我只是一個相當新的用戶,所以我不確定。 –

回答

1

運行時的故事

  • 關於(1)DNVM設置如果運行時沒有爲本地部署提供在執行項目時使用(默認的運行時包)。
  • 關於(2)global.json指定打開解決方案時在Visual Studio中使用的運行時(因爲可能有許多不同的sdks項目)(Design Notes ASP.Net Team)。在我的理解中沒有超出發展的用法。
  • 關於(4)和註釋中提到的一樣,項目的屬性頁面基本上是用於在此項目中啓動調試時用於調試的框架,但似乎像global.json是主控。在我的理解中沒有超出發展的用法。

我還沒有發現任何超過這三件事情之間的設計說明正確的文件。

構建故事

  • 關於(3)。 project.json中指定的框架(dnx451,dnxcore50)是nuget包(其中包含兩個目標的單獨dll)的構建目標。該庫爲dnx451和dnxcore50環境單獨構建,並打包成一個nuget包。確保你也瞭解與「dnx451」和「dnxcore50」不同的目標「dotnet」。一旦部署了應用程序,DNX將從nuget包中獲取正確的dll(或者在整個應用程序打包之前)。
+0

感謝您的詳細信息。 – frank

相關問題