教程 | .NET Core 在 Windows 和 Linux 上的快速入门





5.00/5 (14投票s)
本文将帮助您快速开始在 Linux 和 Windows 上使用 .NET Core 构建应用程序。
引言
本文将涵盖以下内容
- 简要概念
- 实现 - 在 Windows 中开发应用程序的两种方法
- 实现 - 在 Windows 中开发应用程序
- 实现 - 在 Linux 服务器(Ubuntu 16.04)上安装 .NET Core
- 实现 - 将应用程序(在 Windows 上创建)部署到 Linux 服务器(Ubuntu 16.04)
- 实现 - 在 Linux 上开发应用程序
- 实现 - 使用 Visual Studio 在 Windows 上开发 MVC 应用程序
简要概念
什么是 .NET Core?
- 由 Microsoft 维护的开发平台/框架。
- 它支持以下操作系统
- Windows
- MAC
- Linux
- 云
- 嵌入式/物联网场景
特点
- 灵活部署
- 可以部署在所有支持的机器上。
- 跨平台
- 可在 Windows、MAC 和 Linux 上运行;- - 今天的内容将涵盖此部分
- 可以移植到其他操作系统。- - 今天的内容将涵盖此部分
- 可以通过任何命令行工具安装。
- 兼容性
- .NET Core 通过 .NET Standard 库与 .NET Framework、Xamarin 和 Mono 兼容。
- 开源
- .NET Core 平台是开源的:https://github.com/dotnet/core
实现(使用代码)
1. 在 Windows 中开发应用程序的两种方法
- 使用命令行
- 使用 Visual Studio IDE
2. 在 Windows 中开发应用程序
2.1. 使用命令行 - 步骤
- 从上一个路径下载适用于 Windows 的 .NET Core SDK
- 打开 cmd.exe / 相关的命令行工具
- 按照以下命令创建示例项目并安装 .NET Core
- cd C:\Gourav_Personal\Study Material\.NET CORE\Demo
- mkdir demo1
- cd demo1
- dotnet new
- 还原包并运行项目
- dotnet restore
- dotnet run
下载 demo1 附件作为参考。
2.2. 使用 Visual Studio - 步骤
- 安装并打开 VS 2015(更新 3 **或更高版本**
- 安装 .NET Core RC2 包
- 创建一个项目
- 选择 .NET Core 选项卡 **并选择** 控制台应用程序(.NET Core)
- 在 program.cs 中编写几行代码
- 运行应用程序。
下载 demo2 附件作为参考。
3. 在 Linux 服务器(Ubuntu 16.04)上安装 .NET Core
- 我在 Windows 机器上使用 **Oracle Virtual Box**配合 **Ubuntu 16.04** 镜像来执行此用例。
- 运行以下命令使其正常工作
- sudo sh -c 'echo "deb [arch=amd64] https://apt-mo.trafficmanager.net/repos/dotnet/ trusty main" > /etc/apt/sources.list.d/dotnetdev.list'
- sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 417A0893
- sudo apt-get update
- 在您的 Linux 机器上安装以下软件包
- 现在转到下载位置并运行以下命令
- sudo dpkg -i libicu52_52.1-3ubuntu0.4_amd64.deb
- sudo apt-get install dotnet-sharedframework-microsoft.netcore.app-1.0.0-rc2-3002702
- sudo apt-get install dotnet-dev-1.0.0-preview2-003121
4. 将应用程序(在 Windows 上创建)部署到 Linux 服务器(Ubuntu 16.04)
- 将文章中附带的 demo1 应用程序移动到 Linux 机器上并解压。
- 在终端中转到应用程序目录。
- 还原包并运行项目
- dotnet restore
- dotnet run
5. 在 Linux 上开发应用程序
步骤
- 打开终端
- 按照以下命令创建示例项目并安装 .NET Core
- cd Downloads
- mkdir demo2
- cd demo2
- dotnet new
- 还原包并运行项目
- dotnet restore
- dotnet run
6. 使用 Visual Studio 在 Windows 上开发 MVC 应用程序
步骤 – 多种概念
- 左键单击 gadget 并拖动以移动它。左键单击 gadget 的右下角并拖动以调整其大小。右键单击 gadget 以访问其属性。
- 打开 VS 2015 并创建项目
- 选择 Web - > ASP .NET Core Web 应用程序(.NET Core)并选择模板 – **Empty**(以便更好地理解概念)
- 运行应用程序
- 静态文件
- 注释掉 StartUp.cs 文件中的默认代码。
- 在 wwwroot 文件夹中添加 HTML 文件
- 在 project.json 文件的 dependencies 部分添加“Microsoft.AspNetCore.StaticFiles”
- 在 VS 2015 中保存文件后还原包
- 在 startup 文件中的 configure 方法中添加
app.UseStaticFiles()
。
- 使用静态 URL 运行应用程序,例如:https://:50938/Sample.html
- MVC
- 在 project.json 文件中添加“Microsoft.AspNetCore.Mvc”
- 添加 MVC 结构(添加 Controllers 和 Views 文件夹以及其中的默认文件)
- 在 startup 文件中的“ConfigureServices”方法中添加
services.AddMvc()
** - 在与 MVc 路由相关的“Configure”方法中添加以下代码
app.UseMvc(routes =>
{
routes.MapRoute(
name: "default",
template: "{controller}/{action}/{id?}",
defaults: new { controller = "Home", action = "Index" }
);
});
- 使用 MVC URL 运行应用程序,例如:https://:50938/Home/Index
- 类库概念
- 添加类库以提取任何通用代码(.NET Core 类型)
- 创建接口和类并实现一些逻辑
- 在主项目的 project.json 中提及入口点“用于类库”,以便在主项目中使用它。例如:"ClassLibrary1": "1.0.0-*"
- 在 Startup.cs 文件中使用依赖注入概念将其作为服务使用。例如:
services.AddSingleton<IInterface, Class1>();
- 将其实现到控制器中作为“Controller Injection”
- 使用 MVC URL 运行应用程序,例如:https://:50938/Home/Index
- 中间件概念
- 注释掉 StartUp.cs 文件中“Configure”方法中的所有代码。
- 在主项目中添加中间件类。
- 对中间件类中的“Invoke”方法进行一些更改,例如:
public Task Invoke(HttpContext httpContext)
{
httpContext.Response.WriteAsync("Middleware Output");
return _next(httpContext);
}
- 在 startup 文件中使用相同的中间件类,例如:
app.UseMiddleware();
- 运行应用程序,例如:https://:50938
下载 demo3 附件作为参考。
关注点
我喜欢使用 .NET Core,因为它允许我们在任何平台上开发应用程序,而且无论应用程序是在 Windows 还是 Linux 上开发的,都可以部署到两者上。
Microsoft 太棒了 :)
参考演示
我附上了三个演示文件,用于演示文章中显示的解释。