- ASP.NET Core 教程
- ASP.NET Core - 主页
- ASP.NET Core - 概述
- ASP.NET Core - 环境设置
- ASP.NET Core - 新项目
- ASP.NET Core - 项目布局
- ASP.NET Core - Project.Json
- ASP.NET Core - 配置
- ASP.NET Core - 中间件
- ASP.NET Core - 异常
- ASP.NET Core - 静态文件
- ASP.NET Core - 设置 MVC
- ASP.NET Core - MVC 设计模式
- ASP.NET Core - 路由
- ASP.NET Core - 属性路由
- ASP.NET Core - 行动结果
- ASP.NET Core - 视图
- 设置实体框架
- ASP.NET Core - DBContext
- ASP.NET Core - Razor 布局视图
- ASP.NET Core - Razor 视图启动
- ASP.NET Core - Razor 视图导入
- ASP.NET Core - Razor 标签助手
- ASP.NET Core - Razor 编辑表单
- ASP.NET Core - 身份概述
- ASP.NET Core - 授权属性
- 身份配置
- ASP.NET Core - 身份迁移
- ASP.NET Core - 用户注册
- ASP.NET Core - 创建用户
- ASP.NET Core - 登录和注销
- ASP.NET Core 有用资源
- ASP.NET Core - 快速指南
- ASP.NET Core - 有用的资源
- ASP.NET Core - 讨论
ASP.NET Core - 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帮助,其中不仅包括包名称,还包括版本号,如下所示下面的截图。
您还可以通过右键单击“解决方案资源管理器”中的“引用”,然后选择“管理 NuGet 包”来使用 UI。您现在可以看到当前安装的软件包。
这些包与您的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。
.NET Framework 已经存在了 15 年,它包含的框架可以执行从 Web 编程到桌面编程的所有操作。
它是一个巨大的框架,只能在 Windows 上运行。
“netcoreapp1.0”是.NET Core 框架。它是一个跨平台框架,可以工作在各种平台上,不仅是Windows,还可以工作在OS X和Linux上。
该框架的功能比完整的 .NET 框架少,但它确实具有 ASP.NET Core Web 开发所需的所有功能。