ASP.NET Core 是一个跨平台,高性能的开源框架,用于构建现代化的,基于云的互联网应用程序。使用 ASP.NET Core ,您可以:

  • 构建Web应用程序和服务,IoT应用程序和移动后端。
  • 在Windows,macOS和Linux上使用您最喜爱的开发工具。
  • 部署到云端或本地(on-premises)
  • 在.NET Core或.NET Framework上运行。

为什么要使用ASP.NET Core?

数百万的开发人员已经使用ASP.NET(并继续使用它)来创建web程序。  ASP.NET Core 是 ASP.NET 的重新设计,其架构更改使得框架更精简和模块化。ASP.NET Core提供以下好处:

  • 统一的方式构建Web UI和Web API。
  • 整合现代客户端框架和开发工作流程。
  • 一个云就绪的,基于环境的配置系统。
  • 内置依赖注入。
  • 轻量级,高性能和模块化的HTTP请求管道。
  • 可以寄宿在IIS上或者自宿主(self-host)于你自己的进程。
  • 可以在.NET Core上运行,它支持真正的并行应用程序版本管理。
  • 用于简化现代Web开发的工具。
  • 能够在Windows,MacOS和Linux上构建和运行。
  • 开源并重视社区。

ASP.NET Core 完全使用NuGet包。这允许您优化您的应用程序,仅包括您需要的NuGet包。这样做的好处是应用程序占用空间更小,更安全,减少服务,改进性能。

使用ASP.NET Core MVC构建Web API和Web UI

ASP.NET Core MVC提供了帮助您构建Web API和Web应用程序的功能:

  • 模型 - 视图 - 控制器(MVC)模式有助于使您的Web API和Web应用程序是可测试的。
  • Razor Pages (2.0版本中的新功能)是一种基于页面的编程模型,可以使Web UI的创建更简单,更高效。
  • Razor语法为 Razor Pages 和 MVC Views 提供了高效的语言。
  • Tag Helpers 使服务器端代码能够在Razor文件中创建和呈现HTML元素。
  • 内置支持多种数据格式和内容协商功能,可让您的Web API覆盖广泛的客户端,包括浏览器和移动设备。
  • 模型绑定自动将数据从HTTP请求映射到 action 方法参数。
  • 模型验证自动执行客户端和服务器端验证。

客户端开发

ASP.NET Core旨在与各种客户端框架无缝集成,包括AngularJSKnockoutJSBootstrap。有关详细信息,请参阅客户端开发

快速入门

1、安装.NET Core SDK

创建 .NET apps,只需要下载 .NET Core SDK for Windows,此安装器将会安装最新稳定版本的工具,并将其放在环境变量PATH里,以便我们可以在任何地方打开控制台运行dotnet。

2、初始化一些代码

下面演示一个hello world的控制台程序

  1. 打开命令提示符
  2. 切换目录到桌面cd C:\Users\yang\Desktop
  3. 输入 dotnet new console -o hwapp命令,其中  dotnet new  表示创建一个新的应用程序, console 是创建应用程序的类型, -o hwapp 表示生成一个名叫hwapp(Hello World app的简写)的目录,生成的程序都会放到此文件夹下;
  4. 使用cd hwapp进入刚生成的hwapp目录

控制台应用程序模板会创建一个 Program.cs 文件,该代码将会输出"Hello World" 到控制台。

using System;

namespace hwapp
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Hello World!");
        }
    }
}

3、使用 dotnet run 运行该程序

到此为止,我们已经构建并运行了第一个.NET 程序。以下是整个步骤:

C:\Windows\system32>cd C:\Users\yang\Desktop

C:\Users\yang\Desktop>dotnet new console -o hwapp

欢迎使用 .NET Core!
---------------------
若要详细了解 .NET Core,请访问 https://aka.ms/dotnet-docs。使用 dotnet --help 查看可用的命令或转到 https://aka.ms/dotnet-cli-docs。

遥测
--------------
.NET Core 收集使用情况数据,以便改善用户体验。数据是匿名的且不包含命令行参数。数据由 Microsoft 收集,并与社区共享。
可选择使用你最喜爱的 shell 将 DOTNET_CLI_TELEMETRY_OPTOUT 环境变量设置为 1,从而退出遥测。
若要深入了解 .NET Core 工具遥测,请访问 https://aka.ms/dotnet-cli-telemetry。
正在准备...
已成功创建模板“Console Application”。

正在处理创建后操作...
正在 hwapp\hwapp.csproj 上运行 "dotnet restore"...
  Restoring packages for C:\Users\yang\Desktop\hwapp\hwapp.csproj...
  Generating MSBuild file C:\Users\yang\Desktop\hwapp\obj\hwapp.csproj.nuget.g.props.
  Generating MSBuild file C:\Users\yang\Desktop\hwapp\obj\hwapp.csproj.nuget.g.targets.
  Restore completed in 193.89 ms for C:\Users\yang\Desktop\hwapp\hwapp.csproj.

还原成功。

C:\Users\yang\Desktop>cd hwapp

C:\Users\yang\Desktop\hwapp>dotnet run
  Hello World!

同理,创建一个web应用程序

C:\Users\yang\Desktop>dotnet new web -o webApp
已成功创建模板“ASP.NET Core Empty”。
此模板包含非 Microsoft 的各方的技术,有关详细信息,请参阅 https://aka.ms/template-3pn。

正在处理创建后操作...
正在 webApp\webApp.csproj 上运行 "dotnet restore"...
  Restoring packages for C:\Users\yang\Desktop\webApp\webApp.csproj...
  Generating MSBuild file C:\Users\yang\Desktop\webApp\obj\webApp.csproj.nuget.g.props.
  Generating MSBuild file C:\Users\yang\Desktop\webApp\obj\webApp.csproj.nuget.g.targets.
  Restore completed in 2.65 sec for C:\Users\yang\Desktop\webApp\webApp.csproj.

还原成功。

C:\Users\yang\Desktop>cd webApp

C:\Users\yang\Desktop\webApp>dotnet run
Hosting environment: Production
Content root path: C:\Users\yang\Desktop\webApp
Now listening on: http://localhost:5000
Application started. Press Ctrl+C to shut down.
info: Microsoft.AspNetCore.Hosting.Internal.WebHost[1]
      Request starting HTTP/1.1 GET http://localhost:5000/
info: Microsoft.AspNetCore.Hosting.Internal.WebHost[2]
      Request finished in 75.0924ms 200
info: Microsoft.AspNetCore.Hosting.Internal.WebHost[1]
      Request starting HTTP/1.1 GET http://localhost:5000/favicon.ico
info: Microsoft.AspNetCore.Hosting.Internal.WebHost[2]
      Request finished in 0.459ms 200

同理,我们再来一个MVC web应用程序

C:\Users\yang\Desktop\webApp>dotnet new mvc -o mvcApp
已成功创建模板“ASP.NET Core Web App (Model-View-Controller)”。
此模板包含非 Microsoft 的各方的技术,有关详细信息,请参阅 https://aka.ms/template-3pn。

正在处理创建后操作...
正在 mvcApp\mvcApp.csproj 上运行 "dotnet restore"...
  Restoring packages for C:\Users\yang\Desktop\webApp\mvcApp\mvcApp.csproj...
  Restoring packages for C:\Users\yang\Desktop\webApp\mvcApp\mvcApp.csproj...
  Restore completed in 1.48 sec for C:\Users\yang\Desktop\webApp\mvcApp\mvcApp.csproj.
  Generating MSBuild file C:\Users\yang\Desktop\webApp\mvcApp\obj\mvcApp.csproj.nuget.g.props.
  Generating MSBuild file C:\Users\yang\Desktop\webApp\mvcApp\obj\mvcApp.csproj.nuget.g.targets.
  Restore completed in 2.59 sec for C:\Users\yang\Desktop\webApp\mvcApp\mvcApp.csproj.

还原成功。

C:\Users\yang\Desktop\webApp>cd mvcApp

C:\Users\yang\Desktop\webApp\mvcApp>dotnet run
Hosting environment: Production
Content root path: C:\Users\yang\Desktop\webApp\mvcApp
Now listening on: http://localhost:5000
Application started. Press Ctrl+C to shut down.

.NET Core入门教程

概念和体系结构, ASP.NET Core Introduction and ASP.NET Core Fundamentals.

如何选择.NET Core和.NET Framework

.NET Core API地址

.NET 官方文档地址

.NET Core 中文文档

.NET Core初体验 在window上构建第一个app的更多相关文章

  1. JCEF 初体验,window系统构建jar包

    前言 本文记录如何通过jcef源代码去构建自己所需要的jar包,此文章构建的为windows64位jcef 的 jar 包,若需要构建 32 位的 jar 包,则需要按照文章将相关准备软件设置为 32 ...

  2. .NET Core初体验 - 在Mac下运行第一个Web示例程序

    要说最近两天程序猿之间最喜欢吹水的事是什么?那绝壁是甲骨文要放弃Java!简直做梦都要笑醒!由于公司的产品线全面转向Java,最近几个月也一直在苦学Java技术.已经默默决定了,如果消息证实是真的,我 ...

  3. Serverless 初体验:快速开发与部署一个Hello World(Java版)

    昨天被阿里云的这个酷炫大屏吸引了! 我等85后开发者居然这么少!挺好奇到底什么鬼东西都是90.95后在玩?就深入看了一下. 这是一个关于Serverless的体验活动,Serverless在国内一直都 ...

  4. .NET Core 初体验

    .NET Core 作为微软的开源项目,neter 们对之的期待还是挺大的. 以前也看过,接触过,摸索建了几个示例项目,今天就罗列下自己的初体验. .NET Core 安装.帮助等 安装的话,直接官网 ...

  5. Visual Studio Code 学习.net core初体验

    一,安装 最近在用 Visual Studio Code 学习.net core ,记录下学习的过程,首先去官网下载最新的.net core2.1安装包,有windows 和mac,根据自己的开发环境 ...

  6. 阿里云函数计算 .NET Core 初体验

    体验了一波阿里云函数计算, 已支持 .NET Core 2.1, 那么按照惯例, 来写个 "Hello World" 吧. 作者注: 开发环境 Windows 10 & V ...

  7. redis 之初体验(window)

    1 下载window版本的redis :https://github.com/MSOpenTech/redis/releases 2 解压压缩包.我的放在了E盘: E:/redis 3 程序,输入cm ...

  8. .Net Core 初体验及总结(内含命令大全)

    dotnet 命令目录: dotnet new  -创建 dotnet restore  -还原 dotnet build -编译 dotnet run -运行 dotnet test -测试 dot ...

  9. .Net Core初体验

    对于C#语言支持(由C#1.0-C#7.1): 编码可以使用跨平台的IDE选择,就如同VS+Resharper一样方便: 运行效果:

随机推荐

  1. ubuntu14.04 编译安装highpoint rocketraid 2720驱动

    highpoint官方只有ubuntu12.10驱动,对于ubuntu14.04或者12.04,需要手工编译安装驱动. 基本步骤: 1.下载rocketraid 2720驱动源代码 2.在一台装有ub ...

  2. google浏览器插件推荐

    http://www.tuicool.com/articles/eQ32Ur http://blog.jobbole.com/1386/ https://www.oschina.net/news/46 ...

  3. dependencies 与 devDependencies 的区别

    dependencies 与 devDependencies 的区别 在使用 npm install 安装 npm 包时,有两种命令参数可以把它们的信息写入 package.json 文件: --sa ...

  4. 关于webpack,打包时遇到的错误

    最近在研究webpack这玩意,然后遇到一个问题,执行npm run build的时候,出现下面这个问题,各种搜索后,各种尝试,都没解决 运行时报错ERROR in ./src/app.vue Mod ...

  5. MongoDB添加用户验证

    Mongodb默认启动是不带认证,也没有账号,只要能连接上服务就可以对数据库进行各种操作,这样可不行.现在,我们得一步步开启使用用户和认证. 第一步,我们得定位到mongodb的安装目录.我本机的是C ...

  6. 简要分析javascript的选项卡和轮播图

    选项卡 思路 1.按钮和展示的页面要对应:分别遍历,记住当前按钮的索引,让其成为展示页面的索引 2.只出现所对应的页面:所有的页面隐藏,只展示想要的页面 只展示js代码 for(var i=0;i&l ...

  7. 【LightOJ1336】Sigma Function(数论)

    [LightOJ1336]Sigma Function(数论) 题面 Vjudge 求和运算是一种有趣的操作,它来源于古希腊字母σ,现在我们来求一个数字的所有因子之和.例如σ(24)=1+2+3+4+ ...

  8. [BZOJ2503][HAOI2006]均分数据

    BZOJ Luogu sol 如果已经确定了一个序列,现要求把这个序列分成m个连续段作为答案,那么就可以用一个显而易见的DP DP显然可以得到当前序列下的最优解. 所以模拟退火瞎JB改一改序列每次DP ...

  9. 关于C++ const 的全面总结《转》

    C++中的const关键字的用法非常灵活,而使用const将大大改善程序的健壮性,本人根据各方面查到的资料进行总结如下,期望对朋友们有所帮助. Const 是C++中常用的类型修饰符,常类型是指使用类 ...

  10. CLOB型转成字符型

    //oracle.sql.Clob类型转换成String类型 public static String ClobToString(Clob clob) { String reString = &quo ...