好吧,现在我们假设你已经安装好了VS Code开发工具、.Net Core 2.0预览版的SDK dotnet-sdk-2.0.0(注意自己的操作系统),并且已经为VS Code安装好了C#扩展(在VS Code的扩展菜单中输入OmniSharp,安装扩展即可)

一、我们先在我们的电脑硬盘的某个神奇的目录下新建一个文件夹。我把这个地方选在D:\WorkTest下,创建的文件夹名称为MyCMS。注意,这一步不是在VS Code中完成的,貌似VS Code中不能创建文件夹。

二、在VS Code开发环境中,选择  文件->打开文件夹,然后选择我们刚刚创建的那个神奇的文件夹MyCMS打开

三、选择 查看->集成终端 命令或直接摁下快捷键Ctrl+`,VS Code开发环境中会出现一个很厉害的工具。为什么说它厉害呢?因为我们在这里输入一些神奇的命令,我们的项目中会发生一些神奇的现象。比如我接下来在集成终端中输入命令dotnet new sln -n MyCMS,在我们的MyCMS文件夹下会出现一个解决方案MyCMS.sln。如下图:

四、接下来,我们再在集成终端中输入dotnet new mvc -n MyCMS.Web,经过VS Code一阵的挣扎和折腾,我们会发现左边的文件列表中多了一个叫MyCMS.Web的MVC项目。如下图:

五、好啦,下边我们来尝试摁下F5键后会发生什么吧?哈哈……有点失望,程序没有直接运行。而是出现了下边这样一个鬼东西。好吧,我们选择.NET Core

六、再次使劲摁下F5,咦,我去,出来一个launch.json,如下图:

七、看来这东西还是跑不起来,那要不咱们先把它生成一下?好,如上图,在集成终端中输入命令dotnet build MyCMS.Web命令,回车,完事后成成了一个东西在Debug下边。好了,我们把这段生成的东西放在launch.json的.NET Core Launch (web)配置项的program中,然后顺便改一下下边那个cwd。完事后看起来效果是下边这样子的:

八、点击左边的那个小虫子,VS Code中的左侧会出现上图中的情况,选择.NET Core Launch (web),再次摁下F5,还是不行,而且,它告送我们下边还要弄个什么鬼东西:

九、点击“配置任务运行程序”,自动生成了下边这个配置json文件:

十、好了,我们现在配置一下这个新生成的task.json吧。也就是在tasks配置项中添加如下内容,指定一下任务在build时的直接命令对象。${workspaceRoot}的意思就是你项目的根目录,别写成绝对路径啊,不然回头你项目发布后找不到东西别怪我。

"options": {
                "cwd": "${workspaceRoot}/MyCMS.Web"
            }
 
配置好后,效果如下:
 
 
十一、这一次我们再来使劲的摁下F5键-------------神奇的事情发生了,一个已经初具规模的.Net Core MVC网站出现在我们眼前。是不是觉得自己很厉害?哈哈,好啦,开玩笑的,这网站也就看看效果,回头我们实际开发项目的时候啊,这里面的东西基本上会被删得一干二净,剩下个空壳子。如下图:
 
 
十二、后记:这里面有很多东西我也不知道啥意思,反正我折腾了老久才把项目跑起来了,比在visual studio 2017中开发麻烦多了。不过,就这样吧,以后慢慢地折腾多了,你和我也就懂了。不怕,啊!

使用VS Code开发.Net Core 2.0 MVC Web应用程序教程之一的更多相关文章

  1. 使用VS Code开发.Net Core 2.0 MVC Web应用程序教程之三(配置文件读取)

    干了一天的活,还有点时间,给兄弟们写点东西吧. 大家有没有发现一个问题?那就是在.Net Core的MVC项目里面,没有.config文件了!!!同志们,没有config文件了啊,这样搞,我以后要做些 ...

  2. 使用VS Code开发.Net Core 2.0 MVC Web应用程序教程之二

    好了,废话也不多说,咱们直接来看看这款MVC的造型——你可能会大吼:“这……这特么的都是些什么鬼?” 靠,告诉你吧,我也不知道这都是些什么鬼,反正以前我是没有见过这样的MVC.咦,老纸的config文 ...

  3. 使用VS Code 开发.NET Core 应用程序 部署到Linux 跨平台

    使用VS Code 开发.NET Core 应用程序 部署到Linux 跨平台. 前面讲解了VSCode开发调试 .NET Core.都只是在windows下运行. .NET Core真正的核心是跨平 ...

  4. 部署到Linux使用VS Code 开发.NET Core 应用程序

    使用VS Code 开发.NET Core 应用程序 部署到Linux 跨平台 使用VS Code 开发.NET Core 应用程序 部署到Linux 跨平台. 前面讲解了VSCode开发调试 .NE ...

  5. ASP.NET Core 2.0 MVC项目实战

    一.前言 毕业后入职现在的公司快有一个月了,公司主要的产品用的是C/S架构,再加上自己现在还在学习维护很老的delphi项目,还是有很多不情愿的.之前实习时主要是做.NET的B/S架构的项目,主要还是 ...

  6. ASP.NET CORE 1.0 MVC API 文档用 SWASHBUCKLE SWAGGER实现

    from:https://damienbod.com/2015/12/13/asp-net-5-mvc-6-api-documentation-using-swagger/ 代码生成工具: https ...

  7. .net core 2.0 mvc 获取配置信息

    mvc_core_config *:first-child { margin-top: 0 !important; } body>*:last-child { margin-bottom: 0 ...

  8. asp.net core 3.0 MVC JSON 全局配置

    asp.net core 3.0 MVC JSON 全局配置 System.Text.Json(default) startup配置代码如下: using System.Text.Encodings. ...

  9. asp.net core 3.0获取web应用的根目录

    目录 1.需求 2.解决方案 1.需求 asp.net core 3.0的web项目中,在controller中,想要获取wwwroot下的imgs/banners文件夹下的所有文件: 在传统的asp ...

随机推荐

  1. python如何查看有哪些模块

    Question: 如何查看正则表达式模块re及其相关函数的意义 1.终端命令行下 python >> import sys >> sys.modules ########## ...

  2. Mathtype使用技巧

    1. 打开/关闭MathType窗口 Alt+Ctrl+q:插入inline公式   Ctrl+S:更新公式到Word相应位置 Alt+F4:保存并关闭MathType窗口,返回Word. 2. 公式 ...

  3. 2015湖南湘潭 D 二分

    2015湖南湘潭第七届大学生程序设计比赛 D题 Fraction Accepted : 133   Submit : 892 Time Limit : 1000 MS   Memory Limit : ...

  4. FEATURE_MCT_READERDIRECT问题

    刚才查了一下,好像与一个叫CCID的驱动有关.你把FEATURE_MCT_READEDIRECT定义成0x08,再make一下试试.

  5. Mysql 查看表结构的命令

    创建数据库create database abc; 显示数据库 show databases; 使用数据库 use 数据库名; 直接打开数据库 mysql -h localhost -u root - ...

  6. maven 打包 OutOfMemoryError

    maven 打包 OutOfMemoryError [ERROR] Java heap space -> [Help 1] [ERROR] [ERROR] To see the full sta ...

  7. OSGi 系列(七)之服务的监听、跟踪、声明等

    OSGi 系列(七)之服务的监听.跟踪.声明等 1. OSGi 服务的事件监听 和 bundle 的事件监听类似,服务的事件监听是在服务注册.注销,属性被修改的时候,OSGi 框架会发出各种不同的事件 ...

  8. 转录组差异表达分析工具Ballgown

    Ballgown是分析转录组差异表达的R包. 软件安装: 运行R, source(“http://bioconductor.org/biocLite.R”) biocLite(“ballgown”) ...

  9. stark 增删改

    优雅装饰器 import functools def wrapper(func): @functools.wraps(func) # 保留原函数的信息 def inner(*args, **kwarg ...

  10. python面向对象-2深入类的属性

    在交互式环境中输入: >>> class A: a=0 def __init__(self): self.a=10 self.b=100 >>> a=A() > ...