论坛
潜水/灌水快乐,沉淀知识,认识更多同行。
ToB圈子
加入IT圈,遇到更多同好之人。
朋友圈
看朋友圈动态,了解ToB世界。
ToB门户
了解全球最新的ToB事件
博客
Blog
排行榜
Ranklist
文库
业界最专业的IT文库,上传资料也可以赚钱
下载
分享
Share
导读
Guide
相册
Album
记录
Doing
搜索
本版
文章
帖子
ToB圈子
用户
免费入驻
产品入驻
解决方案入驻
公司入驻
案例入驻
登录
·
注册
只需一步,快速开始
账号登录
立即注册
找回密码
用户名
Email
自动登录
找回密码
密码
登录
立即注册
首页
找靠谱产品
找解决方案
找靠谱公司
找案例
找对的人
专家智库
悬赏任务
圈子
SAAS
IT评测·应用市场-qidao123.com
»
论坛
›
软件与程序人生
›
后端开发
›
.Net
›
WinFrom项目结构
WinFrom项目结构
王海鱼
论坛元老
|
2024-9-10 19:37:17
|
显示全部楼层
|
阅读模式
楼主
主题
1029
|
帖子
1029
|
积分
3087
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要
登录
才可以下载或查看,没有账号?
立即注册
x
示例项目结构
在 Visual Studio 中创建一个 WinForms 应用步调后,项目结构如下所示:
MyWinFormsApp/
│
├───Properties/
│ └───Settings.settings
│
├───bin/
│ ├───Debug/
│ └───Release/
│
├───obj/
│ ├───Debug/
│ └───Release/
│
├───Form1.cs
├───Form1.Designer.cs
├───Form1.resx
├───Program.cs
├───App.config
└───MyWinFormsApp.csproj
复制代码
Properties/ 目次包罗应用步调的设置文件。
bin/ 和 obj/ 目次包罗构建输出和中心文件。
Form1.cs 是窗体的主要代码文件。
Form1.Designer.cs 是自动生成的窗体设计器代码。
Form1.resx 是窗体的资源文件。
Program.cs 是应用步调的入口点,包罗 Main 方法。
App.config 是应用步调的配置文件。
MyWinFormsApp.csproj 是项目标工程文件,包罗项目标全部配置信息。
Properties目次
Properties 目次是应用步调配置和资源文件的存储位置。通常由 Visual Studio 自动管理,包罗以下关键文件和子目次:
AssemblyInfo.cs:
包罗步调集的元数据,如版本号、版权信息、步调集特性等。
编译时嵌入到步调集中。
Resources.resx:
存储应用步调的非编码资源,如图像、图标、字符串等。
通过强类型属性在代码中访问,便于资源管理。
Settings.settings:
存储应用步调的设置,如数据库毗连字符串、用户偏好设置等。
运行时通过 Properties.Settings 类访问和修改。
Resources 子目次:
存放应用步调的资源文件,如图像、音频等。
通过 Resources.resx 文件管理。
bin和obj目次
bin 目次
bin 目次是二进制目次,用于存放编译后的步调集(.dll 或 .exe 文件)。
Debug:存放调试版本的输出文件。这些文件包罗了调试信息,使得开发者可以在调试器中检查代码的执行情况。
Release:存放发布版本的输出文件。这些文件不包罗调试信息,通常进行了优化,以提高应用步调的性能。
在 bin 目次中,你还可以找到其他与编译相关的文件,如:
pdb 文件:步调数据库文件,包罗了调试信息,如变量名、类型信息和代码行号等。
config 文件:应用步调配置文件,如 app.config 或 web.config。
xml 文件:有时编译器会生成 XML 文档文件,包罗了代码的注释和文档信息。
obj 目次
obj 目次是对象目次,用于存放编译过程中的中心文件。
Debug 和 Release:与 bin 目次雷同,obj 目次也会根据构建配置生成 Debug 和 Release 子目次。
在 obj 目次中,你可能会找到以下类型的文件:
csproj.FileListAbsolute.txt:列出了项目中全部文件的绝对路径。
*.csproj.GenerateResource.cache:资源生成器的缓存文件。
*.csproj.AssemblyReference.cache:步调集引用的缓存文件。
*.csproj.CopyComplete:复制操纵完成的标志文件。
*.csproj.CoreCompileInputs.cache:编译输入的缓存文件。
obj 目次中的文件通常在构建过程中被自动清算和重新生成。这个目次对于开发者来说通常是不可见的,因为它主要用于构建体系内部处理。
总结
bin 目次:
存放最终编译输出,包括可执行文件和库文件。
包罗 Debug 和 Release 子目次,分别用于调试和发布版本。
obj 目次:
存放编译过程中的中心文件和缓存文件。
这两个目次由体系自动管理,开发者通常无需手动干预。发布应用时,只需关注 bin 目次中的 Release 子目次,确保其中的文件是最终用户使用的版本。
App.config
用于存储应用步调的设置和毗连字符串等信息。允许开发者在不修改代码的情况下更改应用步调举动,例如:
更改数据库毗连字符串。
设置日记级别。
界说应用步调特定举动。
App.config文件结构
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.7.2" />
</startup>
<connectionStrings>
</connectionStrings>
<appSettings>
</appSettings>
</configuration>
复制代码
:根元素,包罗全部配置节。
:指定应用步调支持的 .NET 运行时版本。
:用于存储数据库毗连字符串和其他毗连信息。
:用于存储应用步调的自界说设置,如路径、默认值等。
使用 App.config文件
使用 ConfigurationManager 类来读取和写入 App.config 文件中的设置。以下是一些常见的操纵示例:
读取毗连字符串
string connectionString = ConfigurationManager.ConnectionStrings["MyDatabase"].ConnectionString;
复制代码
读取应用步调设置
string mySetting = ConfigurationManager.AppSettings["MySetting"];
复制代码
写入应用步调设置(仅限 .NET Framework)
Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
config.AppSettings.Settings["MySetting"].Value = "New Value";
config.Save();
ConfigurationManager.RefreshSection("appSettings");
复制代码
留意事项
.NET Core 和 .NET 5+:
使用 appsettings.json 和 appsettings.{Environment}.json 文件存储配置信息,替代 App.config。
.NET Framework:
App.config 编译时重命名为 .config,如 MyApp.exe.config。
代码中使用 ConfigurationManager 需添加 System.Configuration 步调集引用。
App.config 是管理应用步调配置的重要工具,使配置信息与代码分离,便于维护和修改。
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复
使用道具
举报
0 个回复
倒序浏览
返回列表
快速回复
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
or
立即注册
本版积分规则
发表回复
回帖并转播
回帖后跳转到最后一页
发新帖
回复
王海鱼
论坛元老
这个人很懒什么都没写!
楼主热帖
在Winform开发中,使用Async-Awati异步 ...
Vue 和 Django 前后端分离实践 (注册 ...
如何在 Vue 3 中使用<script lang=“t ...
C#依赖注入(直白明了)讲解 一看就会系 ...
一条SQL的执行原理
go中 for循环的坑
Vulnhub之Monkeybox详细测试过程(不同 ...
教务管理系统——数据库课程设计mysql+ ...
【Django】DRF开发中的一些技巧记录 ...
银河麒麟V10安装达梦数据库DM8 ...
标签云
AI
运维
CIO
存储
服务器
浏览过的版块
备份
开源技术
快速回复
返回顶部
返回列表