.net core这个名字对.net程序员来说都不陌生了,但貌似圈子里真正有开发经验的并不多,关键是公司的项目没需求。

今天我就趁着不忙上手玩了玩,搞明白了一些东西,心中也有了十万个为什么。那么现在与大家分享一下我这次玩耍的经历。

在系统中创建一个将要存放工程的目录(我的是F:\Researches\20180409 dotnetcore\test00)

打开一个cmd程序,定位到这个目录,使用dotnet new console命令(用命令行程序模板创建一个工程)

提示成功,在我们的目录中看到,项目已经创建好了

恩。。。还成,console.writeline(“ hello world”);已经帮我写好了,觉得有点空虚。。

使用visual studio code调试程序。

看了一下生成文件,为啥是个dll而不是exe,问了一下群里的码友,

路人A:“那就对了  这玩意儿是跨平台的  Linux之类的不认exe把”

我:“soga 那如果我想要exe呢”

路人B:“修改工程文件,加一行 <RuntimeIdentifier>win10-x64-corert</RuntimeIdentifier>”

exe就这么出现了

接下来,做一个实用点的控制台程序,我之前写过一个C#爬虫程序(此程序的初始版本有在blog里边记录,现在已经加了对多个羞羞网站的支持了)

为了方便,项目生成完成后直接使用vs2017进行编辑

将之前的文件全部导入,大部分代码都可以直接使用。

但遇到两个问题,

一是用于解析RSS源的SyndicationFeed类找不到了

二是Encoding.GetEncoding("gb2312")运行时无法找到相应的类

网上搜索了一下,这两个问题都是少包导致的,.net core的理念是按需加载包

解决方法。还是cmd程序定位到项目目录,两条命令为项目添加两个包引用

dotnet add package System.ServiceModel.Syndication --version 4.5.0-preview1-26216-02

dotnet add package System.Text.Encoding.CodePages --version 4.4.0

并在main方法中注册当前系统的编码

Encoding.RegisterProvider(CodePagesEncodingProvider.Instance);

调试运行:

感觉自己棒棒哒!!

试验完后,仍然有一大堆问题在心中

比如:

.net core的模板中并没有提供带gui框架的模板,那么.net core程序的界面都是怎么处理的?大多用来写控制台程序和网站后台?

wpf程序可以直接引用.net core项目生成的类库么?

我上边的项目在linux系统上如何跑?

最新文章

  1. CentOS7.2部署OpenStack(一)—环境准备
  2. mvc razor中renderPartial,RenderAction,Partial,Action的使用选择
  3. 【BZOJ-3956】Count ST表 + 单调栈
  4. 织梦5.7 TAG、标题、栏目以及keywords长度字符数限制修改
  5. 【概念笔记】 EL表达式
  6. sql server 之函数小技巧 &amp;&amp; 整数类型为空是用空字符串替代实现
  7. iOS 关于开发者证书:此证书的签发者无效的解决方案
  8. [SSD大法好]神舟K480-I5-D3鸟枪换炮M6S
  9. Transact-SQL 常用函数 分类: SQL Server 2015-02-03 09:47 284人阅读 评论(0) 收藏
  10. ATR的基本结构与意义(无历史字符部分)
  11. C++中的动态类型与动态绑定、虚函数、运行时多态的实现
  12. Web多客户端单点登录
  13. JS效果的步骤
  14. 决策树(decision tree)
  15. linux局域网搭建yum仓库(本地(file)、网络(ftp、http))
  16. 从零搭建java后台管理系统(二)mysql和redis安装
  17. Linq 之 Select 和 where 的用法
  18. *** FATAL ERROR L250: CODE SIZE LIMIT IN RESTRICTED VERSION EXCEEDED
  19. linux系统调用的三种方法
  20. 用代码打开通知中心(statusbar、通知栏、消息中心)

热门文章

  1. [leetcode]283. Move Zeroes移零
  2. OpenSSL 结构体
  3. Linux下使用openssl生成证书
  4. Ubuntu 网卡多个 IP 地址
  5. 2081.09.22 Kuma(非旋treap)
  6. MySQL优化Timeout: Pool empty. Unable to fetch a connection in 30 seconds, none available
  7. An existing resource has been found at location D:\Tomcat 7\apache-tomcat-7.0.55\webapps。。。
  8. 14)settings.xml
  9. 20170908工作日记--UML画类图、HTTP协议、Volley源码走读
  10. html使用技巧