winform迁移:从.net framework 到 .net9

闲话不说。我们走新建项目替换文件的方式,这样不用纠结项目文件的内容哪些有用、哪些没用、怎么修改。

一、建立同名项目

新项目没什么多余的东西,就几个关键文件:

  • 项目名.csproj 项目文件,拿这个替换掉原来的
  • Form1三个文件,程序主窗体,当然你可能改了很多
  • Program.cs,程序启动点

二、替换掉项目文件.csproj

替换掉以后目录中原来的文件会自动进入项目,如果有添加的链接文件需要重新添加一次。自己添加的nuget包需要重新添加一次。

其余属性根据需要修改。比如面向的windows版本。

三、删掉多余的配置性文件

由于项目组织方式不太一样,需要删掉一些文件:

  • app.config 用不用不太确定,似乎已经被废弃
  • Properties\AssemblyInfo.cs 删掉,不删掉会报错,配置信息重复
  • Properties\app.manifest 用不用不太确定,我删掉了程序仍然正常运行

四、处理代码不兼容的部分

由于升了C#版本,也换了类库,有些语法不兼容,有些类没有了,需要逐个修改。

总体而言,问题不大。

五、行为差异

这就要程序跑起来看了,我的程序用着挺好,点关闭就抛出异常。


(这里是文档结束)

相关推荐
QUDONG_biubiubiu4 小时前
.NET Runtime 6.0/7.0/8.0/9.0下载修复教程,软件打不开这样解决
.net·net runtime下载·net运行库修复·net runtime安装
宝桥南山4 小时前
.NET 11 - 尝试创建一下AGUIServer和AGUIClient(基于新版.NET SDK for AG-UI)
microsoft·ai·微软·c#·aigc·.net
波力海苔夹心脆6755 小时前
C# LINQ 入门到上手:一篇讲透查询语法、常用操作符与延迟执行(含示例与速查表
经验分享·c#·.net·solr·linq
小羊没烦恼!1 天前
Windows Azure Platform体验(1):Windows Azure
java·大数据·后端·python·flask·word·.net
ZealSinger1 天前
Kotlin2.4迁移context parameters
kotlin·协程·迁移·kotlin2.4
CSharp精选营2 天前
IIS 后面挂 Kestrel,这 3 个配置错了就 502
kestrel·.net·iis配置
鑫 源2 天前
C#源码开源, 获取macOS 电池数据,包括iOS (xamarin开发)
c#·.net·xamarin
xiangcns4 天前
PDMS PiplineTool(三十)一堆小优化+一个彩蛋功能
.net·二次开发·pdms
EatFan4 天前
MCP 从概念到落地:Java(Spring AI Alibaba)与 .NET 双栈接入实操对比
java·人工智能·后端·spring·.net·java后端·mcp