visual studio code调试.net core 2.0程序

简介:

最近在试.net 2.0 Preview时,在VS2017中相对麻烦,现说也怕把生产环境搞坏,于是就想在vs code下试试。

首在安装.net core 2.0的SDK和Runtime,这里下载

https://github.com/dotnet/core/blob/master/release-notes/download-archives/2.0.0-preview1-download.md

再安装vs code(我安装的是中文版),这里下载

https://code.visualstudio.com/?wt.mc_id=DX_841432

打开vs在扩展中安装C#扩展

wKiom1kYJ5Hxq-UJAAdMJf1KVBQ105.png-wh_50

安装完成后,打开cmd

用dotnet new console创建一个项目(首先创建好项目文件夹哦)

dotnet restore一下

dotnet run跑了起来

在vs code中打开文件夹,选择上面创建的文件夹,并双击Program.cs,这时,vs code会安装一个OmniSharp和一个.Net Core Debugger,这两个安装相对较慢(可能在国内原因吧)

接下来在Program.cs中

加入如下代码(测试DataTable的):

wKiom1kYJ6CDHeyDAAE4pT4Rxpc115.png-wh_50

然后在vs code中restore

这样就开始调试了,调试肯定是失败的,因为代码中用到ado.net连接sql server数据,所以在.csproj中添加如下节点:

 

 <ItemGroup>

   <PackageReference Include="System.Data.SqlClient"Version="4.4.0-preview1-25305-02" />

 </ItemGroup>

 

重新restore,然后再次调试 ,如果你的数据中有汉字,这时会发现在在调试控制台上转出有乱码,怎么会事?

wKiom1kYJ9OTZ-ExAAbJT65Y0FY805.png-wh_50

再返回cmd下测试(或在vs code的终端测试),都正常


wKioL1kYJ-Sy2t1JAAJ15FCEtD4702.png-wh_50


wKioL1kYJ-eio2C2AAZBYP3Fq0g180.png-wh_50



看来正常,之前1.1版确实汉字也会有乱码,用上

System.Text.Encoding.RegisterProvider(System.Text.CodePagesEncodingProvider.Instance);

就会解决掉,但本例中不一样,首先在cmd下没有乱码,我试过用上这个方法,调试控制台上也是乱码,于是就东问西找,也没有找到有效的解决方案(我的google能力还有待提高呀),于是只能自己想着解决了,乱码肯定是编码不匹配,这个问题说明设计控制台与终端的编码输出不一样,终端和cmd一个道,应该问题出在vs code输入到控制台上的问题,幸好我c#控制台功底好(),想到一个输出流,然后就找到了

Console.OutputEncoding = System.Text.Encoding.UTF8;

果然问题解决,转了半天cmd可以显示汉字和vs code “文件”-“首选项”-“设置”误导了我,找了半天怎么设置调试控制台来改变编码,原来在程序中控制即可。


















本文转自桂素伟51CTO博客,原文链接: http://blog.51cto.com/axzxs/1925586,如需转载请自行联系原作者


相关文章
|
17天前
|
数据可视化 网络协议 C#
C#/.NET/.NET Core优秀项目和框架2024年3月简报
公众号每月定期推广和分享的C#/.NET/.NET Core优秀项目和框架(每周至少会推荐两个优秀的项目和框架当然节假日除外),公众号推文中有项目和框架的介绍、功能特点、使用方式以及部分功能截图等(打不开或者打开GitHub很慢的同学可以优先查看公众号推文,文末一定会附带项目和框架源码地址)。注意:排名不分先后,都是十分优秀的开源项目和框架,每周定期更新分享(欢迎关注公众号:追逐时光者,第一时间获取每周精选分享资讯🔔)。
|
3月前
|
开发框架 前端开发 JavaScript
盘点72个ASP.NET Core源码Net爱好者不容错过
盘点72个ASP.NET Core源码Net爱好者不容错过
71 0
|
3月前
|
开发框架 .NET
ASP.NET Core NET7 增加session的方法
ASP.NET Core NET7 增加session的方法
37 0
|
3月前
|
开发框架 JavaScript .NET
ASP.NET Core的超级大BUG
ASP.NET Core的超级大BUG
42 0
|
3月前
|
域名解析 缓存 Linux
如何让你的.NET WebAPI程序支持HTTP3?
如何让你的.NET WebAPI程序支持HTTP3?
47 2
如何让你的.NET WebAPI程序支持HTTP3?
|
3月前
|
开发框架 前端开发 .NET
ASP.NET CORE 3.1 MVC“指定的网络名不再可用\企图在不存在的网络连接上进行操作”的问题解决过程
ASP.NET CORE 3.1 MVC“指定的网络名不再可用\企图在不存在的网络连接上进行操作”的问题解决过程
42 0
|
1月前
|
开发框架 人工智能 .NET
C#/.NET/.NET Core拾遗补漏合集(持续更新)
C#/.NET/.NET Core拾遗补漏合集(持续更新)
|
1月前
|
开发框架 中间件 .NET
C# .NET面试系列七:ASP.NET Core
## 第一部分:ASP.NET Core #### 1. 如何在 controller 中注入 service? 在.NET中,在ASP.NET Core应用程序中的Controller中注入服务通常使用<u>依赖注入(Dependency Injection)</u>来实现。以下是一些步骤,说明如何在Controller中注入服务: 1、创建服务 首先,确保你已经在应用程序中注册了服务。这通常在Startup.cs文件的ConfigureServices方法中完成。例如: ```c# services.AddScoped<IMyService, MyService>(); //
63 0
|
2月前
|
开发框架 前端开发 .NET
福利来袭,.NET Core开发5大案例,30w字PDF文档大放送!!!
为了便于大家查找,特将之前开发的.Net Core相关的五大案例整理成文,共计440页,32w字,免费提供给大家,文章底部有PDF下载链接。
33 1
福利来袭,.NET Core开发5大案例,30w字PDF文档大放送!!!
|
2月前
|
算法 BI API
C#/.NET/.NET Core优秀项目和框架2024年1月简报
C#/.NET/.NET Core优秀项目和框架2024年1月简报