.NET项目开发的几个非常重要的项目设置

简介:

在开发.NET项目的时候,包括Winform项目和Web方面的项目,编译和部署的时候,都需要考虑到是32位的X86方式,还是64位的方式,有时候还需要进行调试,如果没有合理设置好这些关系,还可能出现无法调试的问题,本文基于我对Winform的开发总结,介绍在.NET项目中对项目工程的设置操作。

1、设置编译平台的属性

一般情况下,我们为了同时兼容32位和64位操作系统,我们需要对设置好.NET项目的编译属性,一般设置为X86的方式。在VS的IDE里面,选择生成-》配置管理器菜单。

如我的混合框架的项目设置如下所示,统一设置为了X86的兼容模式,请确保所有的项目均为X86的平台设置。

2、WCF服务或者Web项目的设置

项目设置了以上的编译平台属性后,一般情况下,WinForm程序或者类库运行是没什么问题了,但是如果是项目里面有WCF服务或者Web项目的,还需要注意一个设置,就是bin目录的设置。默认如果你修改了X86的平台设置属性后,WCF服务或者Web项目的输出目录也会发生变化,一般情况下,会是bin\x86\Debug\

这个时候这个项目也是能够顺利编译的,一切似乎都显得正常的,但是我们在修改部分代码,并进行调试问题的时候,可能会出现源代码和原始版本不同的情况。

 

 如果这时候,你根据这些去百度或者Google问题,可能会给你找出很多不同的解决方案,但是可能都不太解决问题,其实这个时候的问题处理很简单,就是把输出目录重新设置为Bin就可以了,编译调试源码也一致了。

3、Winform启动项目的目标框架问题

在创建Winform启动项目的时候,默认VS创建的Winform启动项目,它的目标框架总是Client Profile(不知基于什么考虑),而一般情况,我们使用外部类库比较少的时候,或者调用的.NET自身的类库比少的情况下,问题不会出现,但是我们用这个项目开发了一段时间,逐渐加入一些模块的时候,发现总是出现错误,或者会缺少某些命名空间,这个时候,我们就应该要检查一下是否是你的启动项目的目标框架问题了,有可能是你的目标框架为Client Profile的模式,如下所示。

如果我们把它修改为正常的.NET Framework框架方式,那么编译就可能完全通过了。

 

4、.NET安装包的设置

 为了方便客户部署使用,我们很多时候,可能把程序做成一个安装包的形式,这种模式也需要考虑32位和64位的差异,一般我们可以选择X86的平台兼容模式,这种情况下,需要我们在安装项目的属性里面设置X86的平台属性,如下所示。

这样我们生成的安装包,就能成功部署在32位和64位的系统上运行了(他们都使用了32位的程序模式运行)。程序安装后,我们可以看到它的目录也是在X86的程序目录下的。

我们制作安装包,一般情况下,我们可能需要先创建一个空白的项目,然后把相关的发布文件添加到项目中去,这里面其实也有一些讲究,一般情况下,我们先把主程序添加进去,其他部分会根据引用关系自动添加了。如果你一股脑把编译目录里面的DLL都加入进去,很多可能就会出现重复引用的情况。

因此避免以上的问题,一般先添加主程序的EXE文件,然后等它的相关DLL都已经自动引入了,最后检查缺少那些DLL和一些文档文件,然后再依次补充一些就可以了。

 

 安装包除了上面情况需要注意外,还需要注意你的系统必备的设置

如果是.NET4的程序,我们一般勾选Microsoft .NET Framework4(X68和X64)这个必备组件(注意不是Client Profile),这样我们可以检测用户的系统是否安装了必备的环境,如果正常则可以成功运行起来了。

以上就是我在开发项目中,经常用到的一些设置属性,虽然很多看似很普通,但是每次必须确保已经成功设置好了,否则可能出现一些错误莫名其妙,会兜很多弯路。 

本文转自博客园伍华聪的博客,原文链接:.NET项目开发的几个非常重要的项目设置,如需转载请自行联系原博主。



目录
相关文章
|
17天前
|
开发框架 前端开发 API
C#/.NET/.NET Core优秀项目和框架2024年9月简报
C#/.NET/.NET Core优秀项目和框架2024年9月简报
|
2月前
|
开发框架 .NET C#
VSCode开发.net项目时调试无效
【9月更文挑战第22天】在使用 VSCode 开发 .NET 项目时遇到调试问题,可从项目配置、调试配置、调试器安装、运行环境、日志和错误信息等方面排查。确认项目类型及文件配置,检查 `launch.json` 文件及配置项,确保调试器扩展已安装并启用,验证 .NET 运行时版本和环境变量,查看 VSCode 输出窗口和项目日志文件,检查权限及代码错误。若问题仍未解决,可查阅官方文档或社区论坛。
winform .net6 和 framework 的图表控件,为啥项目中不存在chart控件,该如何解决?
本文讨论了在基于.NET 6和.NET Framework的WinForms项目中添加图表控件的不同方法。由于.NET 6的WinForms项目默认不包含Chart控件,可以通过NuGet包管理器安装如ScottPlot等图表插件。而对于基于.NET Framework的WinForms项目,Chart控件是默认存在的,也可以通过NuGet安装额外的图表插件,例如LiveCharts。文中提供了通过NuGet添加图表控件的步骤和截图说明。
winform .net6 和 framework 的图表控件,为啥项目中不存在chart控件,该如何解决?
|
17天前
|
存储 消息中间件 前端开发
.NET常见的几种项目架构模式,你知道几种?
.NET常见的几种项目架构模式,你知道几种?
|
17天前
|
边缘计算 开发框架 人工智能
C#/.NET/.NET Core优秀项目和框架2024年8月简报
C#/.NET/.NET Core优秀项目和框架2024年8月简报
|
24天前
|
Cloud Native API C#
.NET云原生应用实践(一):从搭建项目框架结构开始
.NET云原生应用实践(一):从搭建项目框架结构开始
|
3月前
|
Kubernetes 监控 Devops
【独家揭秘】.NET项目中的DevOps实践:从代码提交到生产部署,你不知道的那些事!
【8月更文挑战第28天】.NET 项目中的 DevOps 实践贯穿代码提交到生产部署全流程,涵盖健壮的源代码管理、GitFlow 工作流、持续集成与部署、容器化及监控日志记录。通过 Git、CI/CD 工具、Kubernetes 及日志框架的最佳实践应用,显著提升软件开发效率与质量。本文通过具体示例,助力开发者构建高效可靠的 DevOps 流程,确保项目成功交付。
66 0
|
2月前
|
JSON 测试技术 C#
C#/.NET/.NET Core优秀项目框架推荐榜单
C#/.NET/.NET Core优秀项目框架推荐榜单
128 0
|
3月前
|
C# Windows 开发者
超越选择焦虑:深入解析WinForms、WPF与UWP——谁才是打造顶级.NET桌面应用的终极利器?从开发效率到视觉享受,全面解读三大框架优劣,助你精准匹配项目需求,构建完美桌面应用生态系统
【8月更文挑战第31天】.NET框架为开发者提供了多种桌面应用开发选项,包括WinForms、WPF和UWP。WinForms简单易用,适合快速开发基本应用;WPF提供强大的UI设计工具和丰富的视觉体验,支持XAML,易于实现复杂布局;UWP专为Windows 10设计,支持多设备,充分利用现代硬件特性。本文通过示例代码详细介绍这三种框架的特点,帮助读者根据项目需求做出明智选择。以下是各框架的简单示例代码,便于理解其基本用法。
109 0
|
3月前
|
Java Spring UED
Spring框架的异常处理秘籍:打造不败之身的应用!
【8月更文挑战第31天】在软件开发中,异常处理对应用的稳定性和健壮性至关重要。Spring框架提供了一套完善的异常处理机制,包括使用`@ExceptionHandler`注解和配置`@ControllerAdvice`。本文将详细介绍这两种方式,并通过示例代码展示其具体应用。`@ExceptionHandler`可用于控制器类中的方法,处理特定异常;而`@ControllerAdvice`则允许定义全局异常处理器,捕获多个控制器中的异常。
46 0