ASP.NET Core - project.json



本章將討論project.json檔案。此檔案使用 JavaScript 物件表示法儲存配置資訊,它是 .NET 應用程式的核心。沒有此檔案,您將無法擁有 ASP.NET Core 專案。在這裡,我們將討論此檔案的一些最重要的功能。讓我們雙擊project.json檔案。

Double Click On Project JSon

目前,project.json 檔案中的預設程式碼實現如下:

{
   "dependencies": {
      "Microsoft.NETCore.App": {
         "version": "1.0.0",
         "type": "platform"
      },
      "Microsoft.AspNetCore.Diagnostics": "1.0.0",
      "Microsoft.AspNetCore.Server.IISIntegration": "1.0.0",
      "Microsoft.AspNetCore.Server.Kestrel": "1.0.0",
      "Microsoft.Extensions.Logging.Console": "1.0.0"
   },
   "tools": {
      "Microsoft.AspNetCore.Server.IISIntegration.Tools": "1.0.0-preview2-final"
   },
   "frameworks": {
      "netcoreapp1.0": {
         "imports": ["dotnet5.6", "portable-net45+win8"]
      }
   },
   "buildOptions": {
      "emitEntryPoint": true,
      "preserveCompilationContext": true
   },
   "runtimeOptions": {
      "configProperties": {
         "System.GC.Server": true
      }
   },
   "publishOptions": {
      "include": ["wwwroot", "web.config" ]
   },
   "scripts": {
      "postpublish": [ "dotnet publish-iis --publish-folder %publish:OutputPath%
         --framework %publish:FullTargetFramework%" ]
   }
}

如我們所見,我們在檔案的頂部有版本資訊。這是您構建應用程式時將使用的版本號。

  • 版本是 1.0.0,但此檔案中最重要的部分是依賴項。

  • 如果您的應用程式要執行任何有用的工作,那麼您將需要庫和框架來完成這項工作,例如將資料儲存到資料庫或從資料庫檢索資料,或者呈現複雜的 HTML。

  • 在此版本的 ASP.NET Core 中,所有依賴項都透過 NuGet 包管理器進行管理。

  • NuGet 在 .NET 領域已經存在幾年了,但現在管理所有依賴項的主要方法是使用作為 NuGet 包打包的庫和框架。

  • 應用程式需要的所有頂級 NuGet 包都將儲存在此 project.json 檔案中。

"Microsoft.AspNetCore.Diagnostics": "1.0.0", 
"Microsoft.AspNetCore.Server.IISIntegration": "1.0.0", 
"Microsoft.AspNetCore.Server.Kestrel": "1.0.0", 
"Microsoft.Extensions.Logging.Console": "1.0.0

您可以看到我們在此檔案中有一些依賴項,並且確切的依賴項可能會隨著 ASP.NET 的最終版本的釋出而發生變化。當您想要新增新的依賴項時,例如 ASP.NET MVC 框架,您可以輕鬆地在此 project.json 檔案中鍵入,您還將獲得一些IntelliSense幫助,包括不僅包名稱而且版本號,如下面的螢幕截圖所示。

IntelliSense

您也可以透過右鍵單擊解決方案資源管理器中的“引用”,然後選擇“管理 NuGet 包”來使用 UI。您現在可以看到當前安裝的包。

Installed Packages

這些包與 project.json 檔案中的包相同,您還可以轉到“瀏覽器”並新增其他包,包括預釋出包,例如,將 MVC 框架安裝到此專案中。

MVC Framework

如果您現在使用“安裝”按鈕安裝此包,則此包將儲存在 project.json 中。“框架”部分是 project.json 的另一個重要部分,此部分告訴 ASP.NET 您的應用程式可以使用哪些 .NET 框架。

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

在這種情況下,您將看到“netcoreapp1.0”是專案中使用的框架,您還可以包含安裝 Visual Studio 時安裝的完整 .NET Framework。

  • 它與許多版本的 Windows 作業系統一起安裝的 .NET Framework 相同。

  • 它是已經存在 15 年的 .NET Framework,它包含從 Web 程式設計到桌面程式設計的所有功能的框架。

  • 這是一個龐大的框架,只能在 Windows 上執行。

  • “netcoreapp1.0”是 .NET Core 框架。它是一個跨平臺框架,可以在各種平臺上執行,不僅限於 Windows,還包括 OS X 和 Linux。

  • 此框架的功能比完整的 .NET Framework 少,但它確實具有我們進行 ASP.NET Core Web 開發所需的所有功能。

廣告
© . All rights reserved.