ASP.NET 核心 – Project.Json
ASP.NET 核心 – Project.Json
在本章中,我们将讨论project.json文件。该文件使用 JavaScript 对象表示法来存储配置信息,而这个文件正是 .NET 应用程序的核心。没有这个文件,你就没有 ASP.NET Core 项目。在这里,我们将讨论该文件的一些最重要的功能。让我们双击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帮助,不仅包括包名称,还包括版本号,如所示以下屏幕截图。
您还可以通过在解决方案资源管理器中右键单击引用来使用 UI,然后选择管理 NuGet 包。您现在可以看到当前安装的软件包。
这些包与您的 project.json 文件中的包相同,您还可以转到浏览器并添加其他包,包括预发布的包,比如安装到此项目中的 MVC 框架。
如果您现在使用“安装”按钮安装此包,则此包将存储在 project.json 中。frameworks 部分是 project.json 的另一个重要部分,该部分告诉 ASP.NET 您的应用程序可以使用哪些 .NET 框架。
“构架”: { “netcoreapp1.0”:{ “进口”:[ "dotnet5.6", “便携式-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 框架要少,但它确实具有 ASP.NET Core Web 开发所需的所有功能。