zoukankan      html  css  js  c++  java
  • .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系统上如何跑?

  • 相关阅读:
    C++学习9 this指针详解
    福建省第八届 Triangles
    UVA 11584 Partitioning by Palindromes
    POJ 2752 Seek the Name, Seek the Fame
    UVA 11437 Triangle Fun
    UVA 11488 Hyper Prefix Sets (字典树)
    HDU 2988 Dark roads(kruskal模板题)
    HDU 1385 Minimum Transport Cost
    HDU 2112 HDU Today
    HDU 1548 A strange lift(最短路&&bfs)
  • 原文地址:https://www.cnblogs.com/GuoRL/p/8761056.html
Copyright © 2011-2022 走看看