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. .Net Core下 Redis的String Hash List Set和Sorted Set的例子

    1.新建一个.Net Core控制台应用程序,用Nuget导入驱动 打开程序包管理控制台, 执行以下代码. PM> Install-Package ServiceStack.Redis 即可添加 ...

  2. H5 EventSource 实现web页面推送功能demo

    /** * H5 EventSource 实现web页面推送功能demo */ var serverData,statusDiv; var SERVER_URL = "index.php&q ...

  3. 【BZOJ1146】网络管理(整体二分)

    [BZOJ1146]网络管理(整体二分) 题面 良心洛谷,有BZOJ权限题 题解 要看树套树的戳这里 毕竟是:智商不够数据结构来补 所以, 我们来当一回智商够的选手 听说主席树的题目大部分都可以整体二 ...

  4. WPF自学入门(六)WPF带标题的内容控件简单介绍

    在WPF自学入门(二)WPF-XAML布局控件的文章中分别介绍StackPanel,WarpPanel,DockPanel,Grid,Canvas五种布局容器的使用,可以让我们大致了解容器可以使用在什 ...

  5. JavaScript的作用域

    JavaScript的作用域主要是指函数的作用域,在进行结果判断的时候十分重要,如果不清楚作用域,便很有可能导致拿不到预期的结果,也就无法顺利的进行程序的编写,在经历了一系列的学习和了解之后,对相关知 ...

  6. Mysql 忘记管理员密码更改

    对管理员设置密码 第一种方式: #mysqladmin -u root password 'new-password'; #mysqladmin -u root -h localhost passwo ...

  7. 18.CSS

    选择器 1.标签上直接设置style属性 <p style="color: red">直接标签里面写</p> 2.id选择器 <style> # ...

  8. Lego-美团点评接口自动化测试实践

    Lego-美团点评接口自动化测试实践 2018-02-07 转自:Lego-美团点评接口自动化测试实践 目录 一.概述  1.1 接口自动化概述  1.2 提高ROI    针对“减少投入成本”    ...

  9. PAT乙级-1070. 结绳(25)

    给定一段一段的绳子,你需要把它们串成一条绳.每次串连的时候,是把两段绳子对折,再如下图所示套接在一起.这样得到的绳子又被当成是另一段绳子,可以再次对折去跟另一段绳子串连.每次串连后,原来两段绳子的长度 ...

  10. js获取元素的滚动高度,和距离顶部的高度

    jq: 获取浏览器显示区域(可视区域)的高度 : $(window).height(); 获取浏览器显示区域(可视区域)的宽度 : $(window).width(); 获取页面的文档高度 $(doc ...