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了。

相关推荐
kooboo china.10 小时前
Tailwind CSS 实战:基于 Kooboo 构建企业官网页面(二)
前端·css·编辑器·html·.net
编程乐趣15 小时前
提高程序灵活性和效率的利器:Natasha动态编译库【.Net】
.net
程序员秘密基地21 小时前
基于c#,asp.net webform, sql server数据库,在线档案管理系统
开发语言·sqlserver·asp.net·.net·源代码管理
资讯第一线1 天前
Microsoft .NET Framework 3.5 离线安装包 下载
microsoft·.net
chenglin0162 天前
.NET中,const和readonly区别
开发语言·.net
绿龙术士3 天前
C#核心知识
c#·.net
码观天工3 天前
.NET AI Preview 2 发布:从 .NET Aspire 支持到 Qdrant 向量数据库集成,助你快速构建云原生 AI 应用
ai·c#·.net·向量数据库·aspire·qdrant
时光追逐者3 天前
C#/.NET/.NET Core技术前沿周刊 | 第 36 期(2025年4.21-4.27)
c#·.net·.netcore
CHQIUU3 天前
在 C# .NET 中驾驭 JSON:使用 Newtonsoft.Json 进行解析与 POST 请求实战
c#·json·.net