• .net core初试 --- 控制台程序


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

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

     

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

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

    image

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

    image

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

    使用visual studio code调试程序。

    image

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

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

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

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

    exe就这么出现了LCLFP8HNRUT0200)[E(TP]2

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

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

    image

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

    但遇到两个问题,

    一是用于解析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

    image

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

    Encoding.RegisterProvider(CodePagesEncodingProvider.Instance);

    调试运行:

    image

    感觉自己棒棒哒!!

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

    比如:

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

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

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

  • 相关阅读:
    解决duplicate symbols for architecture x86_64错误
    IOS-UITextField键盘不隐藏问题
    IOS-细节错误
    IOS开发-图片上传
    IOS-指定返回Modal的控制器presentViewController
    支付-支付宝集成
    真机测试-Please enter a different string错误解决
    Xcode插件安装 错选了Skip Bundle解决办法
    SQLServer 命令批量删除数据库中指定表(游标循环删除)
    SQL中使用update inner join和delete inner join
  • 原文地址:https://www.cnblogs.com/GuoRL/p/8761056.html
Copyright © 2020-2023  润新知