vs2022开发.net窗体应用开发环境安装配置以及程序发布详细教程

文章目录

一、安装visual studio

1.1推荐win10操作系统

1.2推荐vs2022

社区版、专业版、企业版都可以

社区版免费,能满足大部分开发需求

如果是专业版可以尝试key【TD244-P4NB7-YQ6XK-Y8MMM-YWV2J】

如果是企业版可以尝试key【VHF9H-NXBBB-638P6-6JHCY-88JWH】

复制代码
# 下载地址
https://visualstudio.microsoft.com/zh-hans/downloads

1.3选择工作负载

vs2019,vs2022都是用的在线安装,下载到本地的是一个安装器,叫VisualStudioSetup.exe

如果是.net和c++桌面开发,要选以下三个工作负荷:

  • .NET桌面开发
  • 使用c++的桌面开发
  • Windows应用程序开发
    如果是web端开发,还需要在勾选上ASP.NET和Web开发

后面如果少组件可以通过运行安装器,选择"修改",再来配置,很方便。

二、新建基于.net的winform应用程序

2.1为什么要.net

自2016年开始,微软发布跨平台版本的.NET框架时,它作为经典.NET Framework的跨平台版本,被称之为.NET Core,.NET Core延续到3.1版之后,被改名为.NET 5,然后就是后来的6、7、8、9等各个版本。

刚刚我们安装的vs2022默认对应.net9 SDK,虽然说.net core/5/6/7/8/9是跨平台的,但是基于.net5/6/7/8/9和.net framework的桌面应用不能跨平台,可以简单这么理解只有.net控制台应用或者ASP.net Web应用跨平台,而winform和WPF只能在windows平台上运行。

那传统基于.net framework开发的winform和WPF有必要升级到.net吗?

当然有必要。我认为有两点原因,一方面可以使用.net的新特性,另一方面基于.net的应用可以独立发布,不需要目标PC安装任何.net framework或其他系统级别的组件。

就单单第2点就已经很香、很激动了。

2.2 新建.net窗体应用

2.2.1 选择Window窗体应用

不要选成.net framework了

2.2.2 .net窗体对比framework窗体

我在一个解决方案下新建了两个工程如下,.net默认的工程名称是WinFormsApp,framework默认的工程名称是WindowsFormsApp,有点晕啊,傻傻分不清楚。

左上角的icon颜色也不一样,.net的直接就是黑白色,更有科技感。🆒

三、发布.net应用

在项目上右键,选择"发布"

进入发布对话框后

  • 1.显示所有设置

  • 2.部署模式:独立(这样就不依赖.net运行时,在目标PC上双击exe就能运行,不需要目标PC上安装.net框架了!!!)

  • 3.生成单个文件,如果勾上的话,.net运行时那些文件会打包进exe中

不过独立部署的时候,单个文件也勾选上,这样exe就很大有150M左右,还什么代码都没有写。

终于.net应用不需要目标PC也安装同样的.net framework了。

相关推荐
永远是我的最爱2 小时前
基于.NET的小小便利店前台收银系统
前端·sqlserver·.net·visual studio
菜鸟特工0073 小时前
javax.net.ssl.SSLPeerUnverifiedException 异常如何处理
网络协议·.net·ssl
牧马人win5 小时前
Dapper轻量级扩展库SmartDapper
.net·dapper
吹牛不交税5 小时前
安装Framework4.0时提示:Microsoft .NET Framework 4 已是此操作系统的一部分。不需要安装 .NET Framework
microsoft·.net
无风听海6 小时前
.NET10之ASP.NET Core的Filter管线
java·asp.net·.net
无风听海7 小时前
.NET10之从进程角度理解dotnet run
.net
缺点内向2 天前
C#: 告别繁琐!轻松移除Word文档中的文本与图片水印
c#·自动化·word·.net
2501_930707782 天前
使用 C# .NET 从 PowerPoint 演示文稿中提取背景图片
c#·powerpoint·.net
向上的车轮2 天前
为什么.NET(C#)转 Java 开发时常常在“吐槽”Java:checked exception
java·c#·.net
波波0072 天前
每日一题:.NET 的 GC是如何分代工作的?
算法·.net·gc