[翻译]第一天 - 在 Windows 下安装和运行 .NET Core
原文: http://michaelcrump.net/getting-started-with-aspnetcore/
免责声明:我不是 .NET Core 开发团队的一员,并且使用的是公开、可用的工具。
简介
该系列文章的完整列表如下:
- 第一天 - 在 Windows 下安装和运行 .NET Core
- 第二天 - 看看 Visual Studio 中的 .NET Core 模版
- 第三天 - 在 Mac 上运行 .NET Core 应用程序
- 第四天 - 从 .NET Core 应用程序创建 NuGet 包
- 第五天 - 创建一个 .NET Core 测试项目
- 第六天 - 将一个已有的 .NET Core 项目迁移到 csproj
- 第七天 - 创建一个 ASP.NET Core 应用程序
- 第八天 - 使用 Visual Studio Code 开发一个 .NET Core 控制台应用程序
在这个小系列文章里,我打算向你讲讲我的 .NET Core 学习历程。简而言之,.NET Core 能够运行在 Windows、Mac和许多 Linux 发行版上。它支持多种语言(如C#)并且开源。如果你想了解更多关于 .NET Core 和 .NET Framework 的区别,那么建议你读下这篇文章。
安装
有几个可能有助于安装 .NET Core 的东西。在下载页面 你会看到两个选项,也许你不知道该选哪一个。关键之处在于其中一个用来创建 .NET Core 应用程序,另一个只用来在机器上运行 .NET Core 应用程序:
- .NET Core 1.0.3 SDK - 安装包(包含创建 .NET Core 应用程序的工具)
- .NET Core 1.0.3 SDK - 二进制(只包含运行 .NET Core 应用程序的功能)
在这篇指南里,你需要选择“安装包”选项,因为我们接下来要创建 .NET Core 应用程序。
你也可以安装适用于 Visual Studio 的 .NET 工具,允许我们利用模版创建一个新的 VS 项目。需要注意的是,该工具只适用于 VS 2015 或 VS 2017 。
到现在为止,你已经安装了以下工具(取决于你的 VS 版本和CPU架构):

验证安装
要验证工具是否已安装正确,很简单,打开命令提示符然后输入:
dotnet
你应该看到下图所示:

你可以在 Visual Studio 中,通过转到 “帮助”和“关于”来测试它是否已安装,并查找Microsoft .NET Core Tools,如下图所示:

这时你可以在 Visual Studio 中依次点击 文件->新项目,找到 .NET Core 来创建一个项目。

实践(kick the tires)
我建议你从命令行提示窗开始,输入:
dotnet help
它会列出常用的命令:
new Initialize a basic .NET project
restore Restore dependencies specified in the .NET project
build Builds a .NET project
publish Publishes a .NET project for deployment (including the runtime)
run Compiles and immediately executes a .NET project
test Runs unit tests using the test runner specified in the project
pack Creates a NuGet package
开始输入命令:
dotnet new --help
你会看到以下输出:
Options
-h|--help Show help information
-l|--lang <LANGUAGE> Language of project [C#|F#]
-t|--type <TYPE> Type of project
这时我不确定哪些类型能用,于是我尝试输入:
dotnet new -t blah
然后它会列出可用的项目,包括 Console、Web、Lib 和 xunittest。
要创建一个新控制台应用程序,输入:
dotnet new -t console
如果不指定类型,默认类型也是控制台应用程序,但是我们需要养成指定类型的习惯。我现在有一个 Program.cs 文件和一个 .json 文件,如果我打开 Program.cs,可以看到如下代码:
using System;
namespace ConsoleApplication
{
public class Program
{
public static void Main(string[] args)
{
Console.WriteLine("Hello World!");
}
}
}
你可以修改这块代码或者保持原状,我这里保持原状。
现在我们需要使用命令 dotnet restore 来还原依赖包,用 dotnet build编译代码。
现在我们要运行程序,输入 dotnet run,输出如下:
C:\Users\mbcrump\helloworld>dotnet run
Project helloworld (.NETCoreApp,Version=v1.0) was previously compiled. Skipping compilation.
Hello World!
棒极了,现在我们看到执行 Program.cs 代码的执行结果了。
总结(wrap-up)
现在是时候了。如往常一样,感谢你阅读这篇文章,如果你觉得对你有所帮助或者喜欢这篇文字,请点击分享按钮。另外,如果你想了解我学习 .NET Core 过程中的一些情况,随时留言。
单词总结:
walk sb through sth : 慢慢地、认真地向某人解释某事,或者向某人展示如何去做某事
kick the tires : 在买东西之前对它进行仔细地尝试或测试
翻译水平有限,有些单词不知该如何翻译,如有翻译错误,还请指出来。
[翻译]第一天 - 在 Windows 下安装和运行 .NET Core的更多相关文章
- ElasticSearch入门 第一篇:Windows下安装ElasticSearch
这是ElasticSearch 2.4 版本系列的第一篇: ElasticSearch入门 第一篇:Windows下安装ElasticSearch ElasticSearch入门 第二篇:集群配置 E ...
- windows 下安装和运行 hadoop
windows下安装hadoop,直接去官网采用简单暴力的方法: 1.下载hadoop的安装包:http://hadoop.apache.org/->左边点Releases->点mirro ...
- [dart学习]第一篇:windows下安装配置dart编译环境,写出helloworld
前言 博主非科班出身,平时多用C语言,最近想了解学习一门第二语言,看上了可用于移动开发的目前还小众一点dart,准备用一段比较长的时间来慢慢学习.理解. 关于dart语言不再详细介绍了,大家可以访问 ...
- [TensorFlow]Windows下安装并运行Hello World
参考网址:https://www.tensorflow.org/install/pip (或要VPN) 建议电脑是独显N卡机,安装前先升级驱动,减少不必要错误 1.下载Microsoft Visual ...
- ES1:Windows下安装ElasticSearch
ElasticSearch(简称ES)是一个基于Lucene的分布式全文搜索服务器,本随笔演示在Windows安装ElasticSearch和用于管理ES的Head插件. ElasticSearch官 ...
- ElasticSearch入门 :Windows下安装ElasticSearch
这是ElasticSearch 2.4 版本系列的第一篇: ElasticSearch入门 第一篇:Windows下安装ElasticSearch ElasticSearch入门 第二篇:集群配置 E ...
- Coreseek Windows下安装调试
由于项目需要全文检索,后面就去网上查了下资料,找到了Sphinx[中文是狮身人面像]这个全文检索引擎,听说挺好用的,不过没有中文分词.后面又去找了一下,找到了Coreseek,一款中文全文检索/搜索软 ...
- windows下安装git & 在git@OSC上推送代码
第一部分 windows下安装git 1.下载最新版本的git:直接百度“git”,如图所示,点击立即下载. 也可以直接在官网下载最新版本的git:http://www.git-scm.com/dow ...
- Windows下安装redis,并与PHP使用
一.在windows下安装redis: redis的官方网站下载地址:http://redis.io/download 进入以上网址之后,请见以下的图片操作下载redis: 第一步: 第二步:在对应的 ...
随机推荐
- keras—神经网络CNN—CIFAR_10图像识别
1 from keras.datasets import cifar10 from keras.utils import np_utils import matplotlib.pyplot as pl ...
- Unity 5.1+ Assertion Library (断言库)
Unity 5.1+ ,加入了“断言库”,在 Asset 类中可以方便的找到需要使用断言的函数. UnityEngine.Assertions.Assert.IsNotNull( ) 为何使用断言 使 ...
- Poor Warehouse Keeper
Poor Warehouse Keeper http://acm.hdu.edu.cn/showproblem.php?pid=4803 Jenny is a warehouse keeper. He ...
- ORA-22858: 数据类型的变更无效 varchar2类型转换为clob类型
今天遇到varchar2类型数据不够大,需改为clob类型.Oracle中,如果一个列的类型为varchar2,那么它不能直接转换为clob类型.可以通过间接的方式来修改. 就是把原来的字段删掉,重新 ...
- Codeforces 595B. Pasha and Phone 容斥
B. Pasha and Phone time limit per test 1 second memory limit per test 256 megabytes input standard i ...
- mvc模拟实现
.定义httpmodule <system.webServer> <modules> <add name="UrlRoutingModule" typ ...
- C++11的一般概念——The C++ standard library, 2nd Edition 笔记(二)
( 原书第四章,General Concepts) 只介绍新内容,关于头文件格式和后缀等C++03已经规范化的内容,不再赘述. namespace std:新的std子空间包括: std::tr1, ...
- window.load 和$(document).ready() 、window.load和body onload区别
1.执行时间 window.onload必须等到页面内包括图片的所有元素加载完毕后才能执行. $(document).ready()是DOM结构绘制完毕后就执行,不必等到加载完毕.2.编写个数不同 w ...
- MySQL之练习题5
.将所有的课程的名称以及对应的任课老师姓名打印出来,如下: SELECT cname,tname FROM course INNER JOIN teacher WHERE course.teacher ...
- UVa 10970 Big Chocolate (想一下就AC了)
题意:给你一个m*n的巧克力,让人把它切成1*1的,但是每次只能切一下,问要切多少刀. 析:简单啊,我就不明白了 怎么那么多人TLE了,不会当DP做了吧,其实不用的. 假设有一个1*m的巧克力,很明显 ...