怎样将Winform移植到.NETCore3.0-创新互联-成都创新互联网站建设

关于创新互联

多方位宣传企业产品与服务 突出企业形象

公司简介 公司的服务 荣誉资质 新闻动态 联系我们

怎样将Winform移植到.NETCore3.0-创新互联

这篇文章主要介绍了怎样将Winform移植到.NET Core 3.0,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

成都创新互联公司是一家集网站建设,寿阳企业网站建设,寿阳品牌网站建设,网站定制,寿阳网站建设报价,网络营销,网络优化,寿阳网站推广为一体的创新建站企业,帮助传统企业提升企业形象加强企业竞争力。可充分满足这一群体相比中小企业更为丰富、高端、多元的互联网需求。同时我们时刻保持专业、时尚、前沿,时刻以成就客户成长自我,坚持不断学习、思考、沉淀、净化自己,让我们为更多的企业打造出实用型网站。

环境

首先要下载.NET Core 3.0 与Visual Studio 2019

编辑 csproj 文件


 
  WinExe
  netcoreapp3.0
  true
  false
 

恢复 NuGet 包

找到package.config文件右击选择Upgrade to PackageReference 但是我会弹框

怎样将Winform移植到.NET Core 3.0


我也不知道该怎么解决,搜了一圈没搜到,如果有知道的可以在评论区告诉我,于是我就老老实实将



 
 
 
 
 
 
 

改为下列代码,并写到csproj文件中在 project的子节点中


  
  
  
  
  
  
  

增加引用

同时,有些dll是 .net framework独有,而 .net core因为各种原因并没有引用进来的。参考Porting to .NET Core。如以下几个是需要重新引用的:

  • System.Data。虽然基础层已经是 .NET Core的一部分,即提供者模型和SQL客户端,但目前还没有一些功能,例如架构支持和DataTable/ DataSet。

  • System.DirectoryServices。.NET Core目前不支持与LDAP或Active Directory通信。

  • System.Drawing。虽然严格来说它是客户端API,但许多开发人员在服务器上使用绘图API来提供缩略图生成或水印。我们目前在 .NET Core中不支持这些API。

  • System.Transactions。虽然ADO.NET支持事务,但不支持分布式事务,其中包括环境事务和登记的概念。

  • System.Xml.Xsl和System.Xml.Schema。.NET Core支持XmlDocumentLinq XDocument,包括XPath。但是,目前不支持XSD(XmlSchema)或XSLT(XslTransform)。

  • System.Net.Mail。目前不支持使用这些API从 .NET Core发送电子邮件。

  • System.IO.Ports。.NET Core目前不包括与串行端口通信的功能。

  • System.Workflow。Windows Workflow Foundation(WF)目前在 .NET Core上不可用。

  • System.Xaml。在创建UWP应用程序时,开发人员将使用WinRT XAML API。因此,.NET Core目前不包含托管XAML框架,该框架包括解析XAML文档和实例化描述的对象图的能力。


在我的项目中,我引用了这些:


  
  
  
  
  
  
  
 

增加其他文件

增加了如下几个项目本身就有的文件


  
  
  
   SettingsSingleFileGenerator
   Settings.Designer.cs
  
 
 
  
   Designer
  
 

最终的csproj文件



 
  WinExe
  netcoreapp3.0
  true
  false
 
 
  
  
  
  
  
  
  
 
 
  
  
  
  
  
  
  
 
 
  
  
  
   SettingsSingleFileGenerator
   Settings.Designer.cs
  
 
 
  
   Designer
  
 

移植过程中遇到的问题

.net core不支持Access数据库

我的代码中有带Access数据库相关代码,都报了缺少程序集引用的错误,因此我初步增加了引用


  
  
 

但是还是没用,参考了.NET Core Data Access,发现是.net core不支持Access的原因,因此都把这段代码用条件编译代码 #if 给包起来了。

缺少hostfxr.dll文件

怎样将Winform移植到.NET Core 3.0


编译成功后运行项目发现弹这个窗口,我查了下C:\Program Files\dotnet文件中是存在hostfxr.dll的,看了环境变量也是手动设置了DOTNET_ROOT变量的,但是总是出错,没办法,最后通过复制hostfxr.dll文件到bin\Debug\netcoreapp3.0\下才运行成功

感谢你能够认真阅读完这篇文章,希望小编分享的“怎样将Winform移植到.NET Core 3.0”这篇文章对大家有帮助,同时也希望大家多多支持创新互联网站建设公司,,关注创新互联行业资讯频道,更多相关知识等着你来学习!


文章名称:怎样将Winform移植到.NETCore3.0-创新互联
本文链接:http://kswsj.cn/article/dcpgds.html

其他资讯