前言

本篇文章介绍如何快速建立一个ASP.NET Core应用程序,为自己留个纪录也希望能帮助到有需要的开发人员。

环境

建立一个ASP.NET Core应用程序,首先要从官网下载SDK来建置.NET Core开发环境。

  • .NET Core官网

  • 依照操作系统下载.NET Core SDK。

  • 安装.NET Core SDK

  • .NET Core SDK安装完毕后,开启命令提示字符。输入「dotnet」,系统正常响应.NET Core的相关讯息,即完成.NET Core开发环境的建置。

开发

  • 完成开发环境的建置后,就可以动手撰写ASP.NET Core应用程序。首先建立一个新的文件夹:「lab」。

  • 接着在lab文件夹里,加入一个档案:「project.json」。并且修改档案内容为下列json格式内容,用以设定ASP.NET Core应用程序的项目参数。

    {
    "version": "1.0.0-*",
    "buildOptions": {
    "debugType": "portable",
    "emitEntryPoint": true
    },
    "dependencies": {},
    "frameworks": {
    "netcoreapp1.0": {
    "dependencies": {
    "Microsoft.NETCore.App": {
    "type": "platform",
    "version": "1.0.0"
    },
    "Microsoft.AspNetCore.Server.Kestrel": "1.0.0"
    },
    "imports": "dnxcore50"
    }
    }
    }
  • 接着同样在lab文件夹里,加入一个档案:「Program.cs」。并且修改档案内容为下列C#程序代码内容,用以做为ASP.NET Core应用程序的范例程序。

    using System;
    using System.IO;
    using System.Threading.Tasks;
    using Microsoft.AspNetCore.Builder;
    using Microsoft.AspNetCore.Hosting;
    using Microsoft.AspNetCore.Http; namespace aspnetcoreapp
    {
    public class Program
    {
    public static void Main(string[] args)
    {
    // Build
    var host = new WebHostBuilder() // 设定Host内容的File根路径
    .UseContentRoot(Directory.GetCurrentDirectory()) // 设定启动参数
    .UseStartup<Startup>() // 开启Kestrel聆听HTTP
    .UseKestrel() // 设定聆听的URL
    .UseUrls("http://localhost:5000") // 建立Host
    .Build(); // Run
    try
    {
    // 启动Host
    host.Start(); // 等待关闭
    Console.WriteLine("Application started. Press any key to shut down.");
    Console.ReadKey();
    }
    finally
    {
    // 关闭Host
    host.Dispose();
    }
    }
    } public class Startup
    {
    // Methods
    public void Configure(IApplicationBuilder app)
    {
    // 挂载自定义的Middleware
    app.UseMiddleware<HelloWorldMiddleware>();
    }
    } public class HelloWorldMiddleware
    {
    // Fields
    private readonly RequestDelegate _next; // Constructors
    public HelloWorldMiddleware(RequestDelegate next)
    {
    _next = next;
    } // Methods
    public Task Invoke(HttpContext context)
    {
    // Response
    context.Response.WriteAsync("Hello World!"); // return
    return Task.CompletedTask;
    }
    }
    }
  • 再来开启命令提示字符,进入到上述的lab文件夹后。输入「dotnet restore」,用以初始化ASP.NET Core应用程序。

  • 初始化ASP.NET Core应用程序后,接着输入「dotnet run」,用以编译并执行ASP.NET Core应用程序。

  • 开发工作进行完毕之后,开发人员就可以开启浏览器,输入URL:「http://localhost:5000」,就可以在浏览器上,看到应用程序回传的"Hello World!"。

参考

[ASP.NET Core] Getting Started的更多相关文章

  1. ASP.NET Core 之 Identity 入门(一)

    前言 在 ASP.NET Core 中,仍然沿用了 ASP.NET里面的 Identity 组件库,负责对用户的身份进行认证,总体来说的话,没有MVC 5 里面那么复杂,因为在MVC 5里面引入了OW ...

  2. ASP.NET Core 中的那些认证中间件及一些重要知识点

    前言 在读这篇文章之间,建议先看一下我的 ASP.NET Core 之 Identity 入门系列(一,二,三)奠定一下基础. 有关于 Authentication 的知识太广,所以本篇介绍几个在 A ...

  3. ASP.NET Core应用的错误处理[3]:ExceptionHandlerMiddleware中间件如何呈现“定制化错误页面”

    DeveloperExceptionPageMiddleware中间件利用呈现出来的错误页面实现抛出异常和当前请求的详细信息以辅助开发人员更好地进行纠错诊断工作,而ExceptionHandlerMi ...

  4. ASP.NET Core MVC/WebAPi 模型绑定探索

    前言 相信一直关注我的园友都知道,我写的博文都没有特别枯燥理论性的东西,主要是当每开启一门新的技术之旅时,刚开始就直接去看底层实现原理,第一会感觉索然无味,第二也不明白到底为何要这样做,所以只有当你用 ...

  5. ASP.NET Core应用的错误处理[2]:DeveloperExceptionPageMiddleware中间件如何呈现“开发者异常页面”

    在<ASP.NET Core应用的错误处理[1]:三种呈现错误页面的方式>中,我们通过几个简单的实例演示了如何呈现一个错误页面,这些错误页面的呈现分别由三个对应的中间件来完成,接下来我们将 ...

  6. Asp.net Core中使用Session

    前言 2017年就这么悄无声息的开始了,2017年对我来说又是特别重要的一年. 元旦放假在家写了个Asp.net Core验证码登录, 做demo的过程中遇到两个小问题,第一是在Asp.net Cor ...

  7. ASP.NET Core 中文文档 第四章 MVC(3.8)视图中的依赖注入

    原文:Dependency injection into views 作者:Steve Smith 翻译:姚阿勇(Dr.Yao) 校对:孟帅洋(书缘) ASP.NET Core 支持在视图中使用 依赖 ...

  8. .NET跨平台之旅:将示例站点升级至 ASP.NET Core 1.1

    微软今天在 Connect(); // 2016 上发布了 .NET Core 1.1 ,ASP.NET Core 1.1 以及 Entity Framework Core 1.1.紧跟这次发布,我们 ...

  9. ASP.NET Core HTTP 管道中的那些事儿

    前言 马上2016年就要过去了,时间可是真快啊. 上次写完 Identity 系列之后,反响还不错,所以本来打算写一个 ASP.NET Core 中间件系列的,但是中间遇到了很多事情.首先是 NPOI ...

  10. ASP.NET Core 中间件之压缩、缓存

    前言 今天给大家介绍一下在 ASP.NET Core 日常开发中用的比较多的两个中间件,它们都是出自于微软的 ASP.NET 团队,他们分别是 Microsoft.AspNetCore.Respons ...

随机推荐

  1. 今日提及之动画animation

    今天没有说什么内容,只是对HTML5的细节补充,如HTML结构的可以省略到最大的地步 <!DOCTYPE html><meta charset="UTF-8"&g ...

  2. Trace2:创建SQL Trace

    Trace是轻量级的追踪工具,几乎对系统没有任何副作用,开启Trace,经常能够帮助DBA追踪到一些非常有用的信息.Trace出现的比较早,MS推出更强大的Extended Events来取代Trac ...

  3. 【转】WPF防止界面卡死并显示加载中效果

    原文地址:http://www.cnblogs.com/linyijia/archive/2013/02/06/2900609.html <Window x:Class="Loadin ...

  4. [汇编与C语言关系]1.函数调用

    对于以下程序: int bar(int c, int d) { int e = c + d; return e; } int foo(int a, int b) { return bar(a, b); ...

  5. Python第一天 - set

    (一)初识set dict的作用是建立一组 key 和一组 value 的映射关系,dict的key是不能重复的.有的时候,我们只想要 dict 的 key,不关心 key 对应的 value,目的就 ...

  6. CSS list-style属性控制ul标签样式

    试一试 <style type="text/css" media="all"> ul { list-style-type: disc; } ul#c ...

  7. MVC解决Json DataGrid返回的日期格式是/Date(20130450000365)

    实际上是Json格式化问题,我们应该在返回json的时候进行格式化,我们需要重写系统的JsonResult类 using System; using System.Collections.Generi ...

  8. 缓存Cookie、session、localStorage的区别

    cookie Cookie就是服务器暂存放在你计算机上的一笔资料,好让服务器用来辨认你的计算机.当你在浏览网站的时候,Web服务器会先送一小小资料放在你的计算机上,Cookie 会帮你在网站上所打的文 ...

  9. php对表格进行批量操作如全选反选删除功能

    <!DOCTYPE> <html> <head> <meta http-equiv="content-type" content=&quo ...

  10. 微软消息分析器(Microsoft Message Analyzer )更新至1.2版-2015-1-20

    就在刚才,收到了微软Connect的邮件推送,大名鼎鼎的微软消息分析器更新至1.2版,并且有公众下载链接,大家可以在这里进行下载. 这里简单摘录一下博客里面提到的新版所增加的功能与功能的改进方面. G ...