zoukankan      html  css  js  c++  java
  • 将 Net 项目升级 Core项目经验:(三)迁移后的Net Standard版本的类库测试和多平台项目实测

    迁移后的Net Standard版本的类库测试和多平台项目实测

    按照第一步的方法,添加一个Net Core的MSTest项目,然后将原来的测试项目下的代码迁移到新测试 项目中,然后引用新的Beyondbit.Framework Core类库。然后运行单元测试项目和集成测试项目即可。
    测试当中单元测试下项目没有问题,一遍就过了。但是在集成项目中遇到了一个挺严重的问题。App.Config的读取BUG。

    App.config 读取BUG

    实测使用System.Configuration.ConfigurationManager 4.4.1 版本读取配置时,在Web项目或者控制台应用,都可以顺利读取。但我在vs2017创建的MSUnit的测试项目运行集成测试时,读取失败了。目前还没找到方法解决,后续我会反馈BUG在github上。

    目前我只能建立一个Net Core的控制台程序来集成测试,在测试过程遇到了两个问题,都是和SQL SERVER 相关的。

    SQL 链接

    异常:The keyword 'connection reset' is not supported on this platform

    <add name="mainDB"
             connectionString="Database=DemoDB;Server=.;Uid=sa;Pwd=111qqq!;Enlist=true;Pooling=true;Connection Reset=false;Trusted_Connection=no;Connect TimeOut=3000;"
             providerName="System.Data.SqlClient" />
    

    看上面数据库链接字符串总Connection Reset=false; 删掉这个即可。

    异常:Enlisting in Ambient transactions is not supported.

    这个异常可以看github net core的反馈 提到了在4.5预览版本已经修复了,实测可以。在写这篇文章时,我用的 System.Data.SqlClient(4.4.3)。

    发布Net Core 程序

    控制台程序

    VS 2017 + win 10 + Net Core 2.0 写的程序,F5调试程序是没有问题的,但是如果想不通过VS2017来运行程序,按照Net Framework,一般我们Build过后,去bin目录找debug或release目录下,找到对应的exe文件运行即可。但是Net Core 生成,在binDebug文件下,是不会生成.exe文件了。这个和NetFramework 完全不同
    Net Core 下需要发布才可以做到:
    按照微软的文章《使用 Visual Studio 2017 发布 Hello World 应用程序

    测试结果

    WIN 10 系统

    image

    Mac OS 10.13.4 High Sierra系统

    image

    总结
    至此,以上是迁移Beyonbit.Framework从 Net Framework 3.5 到 Net CoreStandard上的经历。总共花费了2天的时间。后续测试更全面一点,会有更多的运行错误,到是我会根据情况补充到文章里面。以及后续会迁移更复杂的业务系统,遇到的问题,也会补充到文章里。
    这三篇文档是我花了半天时间写的,希望能帮助到有需要的人,同时,在文章里面都贴了一些文章链接,很感谢这些朋友,里面有一下些链接,不知道是不是原文,如有转帖的,可以私信给我,我会改正。

  • 相关阅读:
    Git入门
    基于sendmail的简单zabbix邮件报警
    zabbix agentd安装
    我整理的一份来自于线上的Nginx配置(Nginx.conf),希望对学习Nginx的有帮助
    【转载】Spring Boot引起的“堆外内存泄漏”排查及经验总结
    lodop+art-template实现web端漂亮的小票样式打印
    《阿里巴巴Java开发手册》改名《Java开发手册》,涵盖史无前例的三大升级
    Spring Boot的学习之路(02):和你一起阅读Spring Boot官网
    Spring Boot的学习之路(01):缘起
    『 效率工具 』Spring Boot版的轻量级代码生成器,减少70%以上的开发任务
  • 原文地址:https://www.cnblogs.com/xakoy/p/8891552.html
Copyright © 2011-2022 走看看