winform迁移:从.net framework 到 .net9

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

一、建立同名项目

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

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

二、替换掉项目文件.csproj

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

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

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

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

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

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

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

总体而言,问题不大。

五、行为差异

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


(这里是文档结束)

相关推荐
波波0071 天前
Native AOT 能改变什么?.NET 预编译技术深度剖析
开发语言·.net
Crazy Struggle2 天前
.NET 中如何快速实现 List 集合去重?
c#·.net
极客智造2 天前
ImageSharp 实战应用指南:.NET 跨平台图像处理落地实践
图像处理·.net
时光追逐者2 天前
一个基于 .NET + Vue 实现的通用权限管理平台(RBAC模式),前后端分离模式,开箱即用!
前端·vue.js·c#·.net·.net core
大黄说说2 天前
在 .NET Aspire 项目中集成 AgileConfig 实现统一配置管理
.net
wy3136228212 天前
C#——报错:System.Net.Sockets.SocketException (10049): 在其上下文中,该请求的地址无效。
开发语言·c#·.net
缺点内向3 天前
C#编程实战:如何为Word文档添加背景色或背景图片
开发语言·c#·自动化·word·.net
!chen3 天前
SignalR移植到Esp32小智设备无缝连接.NET功能拓展MCP服务
windows·.net
码云数智-园园3 天前
从 ASP.NET MVC 到现代 .NET:一份完整的迁移升级指南
asp.net·mvc·.net
lfq7612043 天前
.NET Framework 下 C# MVC 项目敏感信息安全存储方法
安全·c#·mvc·.net