使用vscode开发调试.net core应用程序并部署到Linux跨平台
使用VS Code开发 调试.NET Core RC2应用程序,由于.NET Core 目前还处于预览版。
本文使用微软提供的示例进行开发及调试。
https://github.com/aspnet/cli-samples
.NET Core 介绍及说明:
https://github.com/dotnet/cli
http://dotnet.github.io/getting-started/
环境安装
本文开发的实际环境: win10 x64 VSCode 1.0
下载
https://github.com/dotnet/cli#installers-and-binaries
.NET Core SDK Installer:
https://dotnetcli.blob.core.windows.net/dotnet/beta/Installers/Latest/dotnet-dev-win-x64.latest.exe
VSCode :
https://code.visualstudio.com/
VSCode C#插件:
https://github.com/OmniSharp/omnisharp-vscode/releases
最新版: https://github.com/OmniSharp/omnisharp-vscode/releases/download/v1.0.4-rc2/csharp-1.0.4-rc2.vsix
安装好VSCode以后,打开VSCode 安装C#插件。
安装插件:直接用VSCode 打开插件文件就可以安装了。
安装好以后 F1 会发现多了dotnet 命令,证明也就安装完成。

开发调试
下载微软的示例代码:https://github.com/aspnet/cli-samples
下载代码后,使用VSCode 打开文件夹 cli-samples/HelloMvc

F1 输入 dotnet restore
选择对应的dotnet restor (这里显示好像是插件的bug)

你还可以直接在文件夹打开命令行,输入 dotnet restore 同样可以还原相关引用。
还原好相关的引用以后我们就可以进行调试了。
点击调试 程序就跑起来。


这样就可以下断点调试。
访问 http://localhost:5000/

开发
我们来添加一个新的Action
[HttpGet("/about")]
public IActionResult About(){
var useragent=Request.Headers["User-Agent"];
return Content(useragent+"\r\nabout by linezero");
}
访问: http://localhost:5000/about

下断点调试一下程序,断点设置跟VS一样。

断下来以后,可以查看对应的属性以及值。
左侧有对应的监视器,可以查看各个值。
这样我们已经可以调试.NET Core。
跨平台
.NET Core 跨平台
环境:
Ubuntu 14.04.4 LTS 服务器版 全新安装系统。
下载地址:http://mirrors.neusoft.edu.cn/ubuntu-releases/14.04.4/ubuntu-14.04.4-server-amd64.iso
你也可以下载桌面版安装。你可以直接在Ubuntu中使用VSCode 开发调试。
下载地址:http://mirrors.neusoft.edu.cn/ubuntu-releases/14.04.4/
本文部署环境:Ubuntu 14.04.4 LTS 服务器版
SDK安装方法:
http://dotnet.github.io/getting-started/
使用root 用户 执行下面命令。

sh -c 'echo "deb [arch=amd64] http://apt-mo.trafficmanager.net/repos/dotnet/ trusty main" > /etc/apt/sources.list.d/dotnetdev.list' apt-key adv --keyserver apt-mo.trafficmanager.net --recv-keys 417A0893 apt-get update apt-get install dotnet-dev-1.0.0-rc2-002673

安装好以后 输入 dotnet --info 显示如下信息:

这里SDK 就安装好了,我们就可以在Linux 中开发 .NET Core 应用程序。
跨平台运行:
下面我们来发布项目 使用的是 dotnet publish
在windows下定位到 HelloMvc 文件夹打开命令行,输入 dotnet publish

发布好以后,上传 publish 文件夹到linux 系统。
然后cd publish
直接输入 dotnet HelloMvc.dll 就可以执行了。

实现了.NET Core 跨平台 ,这也就是.NET Core 的真正魅力所在。
期待.NET Core 的正式版 Due by June 30, 2016 1.0.0-rtm.
使用vscode开发调试.net core应用程序并部署到Linux跨平台的更多相关文章
- 使用VS Code开发 调试.NET Core 应用程序
使用VS Code开发 调试.NET Core RC2应用程序,由于.NET Core 目前还处于预览版. 本文使用微软提供的示例进行开发及调试. https://github.com/aspnet/ ...
- 使用VS Code 从零开始开发并调试.NET Core 应用程序
最新文章:http://www.cnblogs.com/linezero/p/VSCodeNETCore.html 使用VS Code 从零开始开发并调试.NET Core 应用程序,C#调试. 上一 ...
- 使用VS Code 开发.NET Core 应用程序 部署到Linux 跨平台
使用VS Code 开发.NET Core 应用程序 部署到Linux 跨平台. 前面讲解了VSCode开发调试 .NET Core.都只是在windows下运行. .NET Core真正的核心是跨平 ...
- VSC调试.NET Core 应用程序
VS Code 从零开始开发并调试.NET Core 应用程序 使用VS Code 从零开始开发并调试.NET Core 应用程序,C#调试. 上一篇 使用VS Code开发 调试.NET Core ...
- VS Code开发调试.NET Core
使用VS Code开发 调试.NET Core 应用程序 使用VS Code开发 调试.NET Core RC2应用程序,由于.NET Core 目前还处于预览版. 本文使用微软提供的示例进行开发 ...
- 使用VS Code从零开始开发调试.NET Core 1.0
使用VS Code 从零开始开发调试.NET Core 1.0. .NET Core 是一个开源的.跨平台的 .NET 实现. VS Code 全称是 Visual Studio Code,Visua ...
- 使用VS Code开发调试.NET Core 2.0
使用VS Code 从零开始开发调试.NET Core 2.0.无需安装VS 2017 15.3+即可开发调试.NET Core 2.0应用. VS Code 全称是 Visual Studio Co ...
- VS Code开发调试.NET Core 2.0
VS Code开发调试.NET Core 2.0 使用VS Code 从零开始开发调试.NET Core 2.0.无需安装VS 2017 15.3+即可开发调试.NET Core 2.0应用. VS ...
- 使用VS Code开发调试.NET Core 多项目
使用Visual Studio Code(VS Code)开发调试.NET Core和ASP.NET Core 多项目multiple project. 之前讲解过如果使用Visual Studio ...
随机推荐
- 【Linux】——实用命令
[前言] Linux的命令可以分为文件存取.目录操作.进程管理.权限管理.磁盘操作等内容,大量的命令方便了用户进行更快捷更高效的工作.但有一点需要说明的是,如果不采用linux的命令,也可以完成相应的 ...
- 使用emit发出信号
1. 信号声明 在发送信号的模块类头文件中声明信号函数 signals: void sendRate(QString rate); 2. 在发送模块的成员函数中发出信号 emit sendRate(u ...
- DES(Data Encryption Standard)数据加密标准
DES算法入口参数 DES算法的入口参数有三个:Key.Data.Mode.其中Key为7个字节共56位,是DES算法的工作密钥.Data为8个字节64位,是要被加密或解密的数据;Mode为DES的工 ...
- QThread中的互斥、读写锁、信号量、条件变量
该文出自:http://www.civilnet.cn/bbs/browse.php?topicno=78431 在gemfield的<从pthread到QThread>一文中我们了解了线 ...
- 匿名内存 | shm
page_is_file_cache是和swapbacked互斥的,所以说对于匿名页来说,分配的时候就就会把PageSwapBacked给设置上,page->mapping_address = ...
- 全局 Ajax 事件处理器
jQuery中将Ajax请求和响应分成了若干(5)个阶段 并且允许开发者在Ajax请求和响应的不同阶处理不同的逻辑, 这些方法用于注册事件处理器,用来处理页面上的任何 Ajax 请求,当某些事件触发后 ...
- (age|name|sex)+ 脱离顺序控制 并且能添加多个
(age|name|sex)+ 脱离顺序控制 并且能添加多个
- 整理base.css,重设浏览器样式
有的时候,可以把自己经常写的代码整理一下,分文别类,用的时候,拿过来直接用就可以了,可以节约很多时间,提高工作效率.所以,每个人都要有自己的代码库.点击下载 /* * @Author: liubeim ...
- [NOIP2018 TG D2T2]填数游戏
题目大意:$NOIP2018\;TG\;D2T2$ 题解:在skip2004的博客基础上修改的,也是暴搜. 说明一下把vector改成数组并不可以通过此题,记录. 结论:在$m>n+1$时答案为 ...
- bzoj 1878
莫队乱搞的第一题,(感觉这个算法初学的时候就能想到啊) 总之就是离线,然后扫一遍然后回答,用数组记录状态 但还是有一个地方不太明白 为什么要除siz?这样为什么会优化复杂度呢?? bool cmp(c ...