前言

本篇文章介绍如何快速建立一个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. 2013 duilib入门简明教程 -- 完整的自绘标题栏(8)

        看了前面那么多教程,相信对duilib已有基本映像了,我们就快马加鞭,做出一个完整的自绘标题栏吧~     看到下面这个效果图,小伙伴们是不是有点惊呆了呢~O(∩_∩)O~       dui ...

  2. Leetcode-83 Remove Duplicates from Sorted List

    #83. Remove Duplicates from Sorted List Given a sorted linked list, delete all duplicates such that ...

  3. Javascript刷题 》 查找数组元素位置

    找出元素 item 在给定数组 arr 中的位置 输出描述: function indexOf(arr, item) { ..... } 如果数组中存在 item,则返回元素在数组中的位置,否则返回 ...

  4. 模拟ajax的 script请求

    /** * 模拟ajax的 script请求 * @param {[type]} options [description] * @return {[type]} [description] */ f ...

  5. js学习内容的整理

    1.jquery动态添加Table中的一行 function addTableRow(tableId){var html = '<tr>\ ......\ </tr>" ...

  6. 分享一个LiteDB做的简单考试系统辅助工具

    凌晨,被安排在公司值班,因为台风“灿鸿”即将登陆,风力太大,办公楼,车间等重要部分需要关注.所以无聊,那就分享一下,今天给朋友临时做的一个小的考试系统辅助工具吧.其实非常小,需求也很简单,但是可以根据 ...

  7. 写在最前面 - 每天5分钟玩转 OpenStack(1)

    <每天5分钟玩转 OpenStack>是一个 OpenStack 教程,这是第 1 篇. 这个教程有下面两个特点: 系统讲解 OpenStack 从架构到各个组件:从整体到细节逐一讨论 重 ...

  8. AngularJs 动态加载模块和依赖

    最近项目比较忙额,白天要上班,晚上回来还需要做Angular知识点的ppt给同事,毕竟年底要辞职了,项目的后续开发还是需要有人接手的,所以就占用了晚上学习的时间.本来一直不打算写这些第三方插件的学习笔 ...

  9. PHPStorm如何配置,phpstorm的mac配置文件目录

    PHPStorm的配置分为2大类:项目配置和IDE配置. 项目配置(设置),主要是配置具体项目.IDE 配置(设置),通用的设置会应用到所有的项目上. 项目配置每个项目的配置存储在项目所在目录的 .i ...

  10. 使用MAT(Memory Analyzer Tool)工具分析dump文件--转

    原文地址:http://gao-xianglong.iteye.com/blog/2173140?utm_source=tuicool&utm_medium=referral 前言 生产环境中 ...