C#项目创建和项目中的组成部分

2023-05-16

本文介绍C#在VS中新建的步骤已经各组成部分。

  1. 操作流程
    1.1. 新建一个C#项目
    新建C#项目如下所示:
    在这里插入图片描述

1.2. C#项目组成介绍
1.2.1. Properties
存放资源文件和成员集属性用的,一般也不去修改。Propertie文件夹定义程序集的属性 项目属性文件夹 一般只有一个 AssemblyInfo.cs 类文件,用于保存程序集的信息,如名称,版本等,这些信息一般与项目属性面板中的数据对应,不需要手动编写。
在这里插入图片描述

1.2.2. App.config
app.config是用户自定义配置文件,能够比较灵活修改你的一些配置信息,比如说你的程序需要兼容两种数据库,就可以根据修改配置文件中的参数来实现数据库的连接字符的改变,用的比较多的在抽象工厂模式下,更能体现他的用途。app.config的作用是:能够比较灵活修改你的一些配置信息,如数据库连接,使你在配置环境更改下,能够方便修改
1.2.3. 引用
C#引用分为以下几种类型
1:引用公用类,点击添加引用,可以引用添加.Net类库,或者自己开发的DLL。
在这里插入图片描述

2:引用Web服务,输入web服务地址即可将服务添加引用到项目里。
在这里插入图片描述

3:项目引用,可以引用同解决方案的所有项目。
在这里插入图片描述

新建工程时,自动引用的文件如下所示:S
在这里插入图片描述

1.2.4. From1.cs
From1.cs是窗体设计器,form1.cs是Windows窗体的代码隐藏文件。它是windows的类文件 形成必要的方法,函数也是事件驱动的方法和代码。编写的代码,事件和自定义代码均在此处。即窗体的设计,船体触发事件在该文件实现。
在这里插入图片描述
在这里插入图片描述

1.2.5. Program.cs
每个winform程序都有一个Program.cs文件,看一个VS自动生成的例子。
在这里插入图片描述

注意到在main函数之前有一个[STAThread]的特性,这个特性只是应用程序的COM线程模型是单线程单元。使用Windows窗体的任何应用程序的入口点上必须应用此特性;如果没有这个特性,则Windows组件可能无法工作。因为,如果不存在该特性,应用程序就会使用Windows窗体不支持的多线程单元模型。
System.Windows.Form.Application类提供了一系列静态方法和属性以管理窗体应用程序,例如启动和停止应用程序、处理Windows消息的方法和获取应用程序信息的属性。
Application.EnableVisualStyles ()
此方法为应用程序启用可视样式。如果控件和操作系统支持视觉样式,则控件将以视觉样式进行绘制。若要使 EnableVisualStyles生效,必须在应用程序中创建任何控件之前调用它;EnableVisualStyles 通常是 Main 函数的第一行。当调用 EnableVisualStyles时,无需单独的清单即可启用可视化样式。
Application.SetCompatibleTextRenderingDefault()
某些 Windows 窗体控件可以使用 GDI 图形库或更新的 GDI+ 库来呈现其文本。由于 GDI+ 的性能和本地化问题而做出这样的更改。默认情况下,将支持 UseCompatibleTextRendering 属性的现有控件设置为 true 以获得向后兼容性,但 Visual Studio 等环境中的所有新控件都将该属性设置为 false。要切换新控件的默认文本呈现时,请使用 SetCompatibleTextRenderingDefault。如果在另一个应用程序中承载 Windows 窗体代码,例如 Internet Explorer,切勿调用该方法。仅在独立的 Windows 窗体应用程序中调用该方法。
application.Run()
Main方法调用Application.Run时,创建了MainForm类的一个实例作为参数。这样就指定了当前应用程序的主窗体为MainForm窗体对象,即用MainForm窗体对象来管理当前应用程序消息循环。Application.Run方法同时指定窗体对象可见,并显示它。
1.3. C#项目保存的各文件夹含义
Bin 目录用来存放编译的结果,bin是二进制binrary的英文缩写,因为最初C编译的程序文件都是二进制文件,它有Debug和Release两个版本,分别对应的文件夹为bin/Debug和bin/Release,这个文件夹是默认的输出路径,我们可以通过:项目属性—>配置属性—>输出路径来修改。
  obj是object的缩写,用于存放编译过程中生成的中间临时文件。其中都有debug和release两个子目录,分别对应调试版本和发行版本,在.NET中,编译是分模块进行的,编译整个完成后会合并为一个.DLL或.EXE保存到bin目录下。因为每次编译时默认都是采用增量编译,即只重新编译改变了的模块,obj保存每个模块的编译结果,用来加快编译速度。是否采用增量编译,可以通过:项目属性—>配置属性—>高级—>增量编译来设置。
  Properties文件夹 定义你程序集的属性 项目属性文件夹 一般只有一个 AssemblyInfo.cs 类文件,用于保存程序集的信息,如名称,版本等,这些信息一般与项目属性面板中的数据对应,不需要手动编写。
  .cs 类文件。源代码都写在这里,主要就看这里的代码。
  .resx 资源文件,一些资源存放在这里,一般不需要看。
  .csproj C#项目文件,用VS打开这个文件就可以直接打开这个项目,自动生成,不需要看。
  .csproj.user 是一个配置文件,自动生成的,会记录项目生成路径、项目启动程序等信息。也不需要看。
  .Designer.cs 设计文件,自动生成,不需要看。
  .aspx 是网页文件,HTML代码写在这里面。
  sln:在开发环境中使用的解决方案文件。它将一个或多个项目的所有元素组织到单个的解决方案中。此文件存储在父项目目录中.解决方案文件,他是一个或多个.proj(项目)的集合
  *.sln:(Visual Studio.Solution) 通过为环境提供对项目、项目项和解决方案项在磁盘上位置的引用,可将它们组织到解决方案中。
  比如是生成Debug模式,还是Release模式,是通用CPU还是专用的等
编译和运行直接按F5,至于调试按F9插入断电,F10整行执行,F5,F9,F10配合使用
在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

C#项目创建和项目中的组成部分 的相关文章

  • 玩客云刷入armbian系统总结

    闲着没事把去年搞的玩客云重新刷个armbian系统作为服务器使用 xff0c 以下是个人折腾的总结 准备工具 xff1a USB 转 TTL 线一根 双公头 USB 线一根 闲置 U 盘一个 xff0c 或者读卡器配合存储卡 软件下载地址
  • 按位与、按位或、按位异或、按位取反、按位左移、按位右移

    位运算符比一般的算术运算符速度要快 xff0c 而且可以实现一些算术运算符不能实现的功能 如果要开发高效率程序 xff0c 位运算符是必不可少的 位运算符用来对二进制位进行操作 xff0c 包括 xff1a 按位与 xff08 amp xf
  • linux—shell中的正则表达式

    一 grep 1 grep概述 文本过滤命令 xff1a grep是一种文本搜索工具 xff0c 根据用户指定的 模式 对目标文本进行匹配检查 xff0c 打印匹配到的行 xff1b grep xff1a 由正则表达式或者字符及基本文本字符
  • LaTeX教程2

    LaTeX教程2 latex10 LaTeX数学公式初步latex11 LaTeX数学模式中的矩阵latex12 LaTeX数学公式的多行公式latex13 LaTeX中的参考文献BibTeXlatex14 LaTeX中的参考文献BibLa
  • Linux深入浅出PyTorch(一)安装及基础知识

    目录 PyTorch安装工具使用1 开发工具建议使用pycharm2 安装包管理工具建议使用Anaconda3 安装结果检查 Pytorch安装2 配置pytorch 虚拟环境3 在PyCharm中配置PyTorch虚拟环境 丰富的PyTo
  • AttributeError: ‘NoneType‘ object has no attribute +++ 错误

    AttributeError 39 NoneType 39 object has no attribute 43 43 43 错误 解决办法 xff1a if self pool is not None self pool reset nu
  • Win11系统联想小新Air14Plus笔记本Anaconda环境下安装PyTorch

    PyTorch 创建虚拟环境 conda create name 名称 python 61 3 6 xff08 python版本 xff09 eg conda create name pytorch python 61 3 6 进入虚拟环境
  • 恒源云配置环境过程

    1 下载oss 软件 2 打开oss 上传数据 输入命令login 登录恒源云账号 输入命令 mkdir oss datasets 在个人数据中建立文件夹 名为 34 datasets 34 输入命令 cp 个人数据 zip oss dat
  • ubuntu 无法进入开机界面

    1 按电源键强制关机 xff0c 然后按电源键重新启动电脑 xff0c 然后在光标选择自己使用的系统 不要按 Enter 回车键 xff0c 然后按 e 键 xff0c 进入grub编辑页面 将光标移动到倒数第二行 xff0c 然后在qui
  • iOS警报– UIAlertController

    In this tutorial we ll be discussing the UIAlertController class and how it is handy to create different types of Alerts
  • jquery 读取XML 文件 并按时间进行排序

    在开发中遇到了一个很烦躁的问题 xff0c 就说在jdk 1 4 的情况下 xff0c 读取远程的XML文件不能自动断开 xff0c 于是就想到了 xff0c 用jQuery来写 在测试的时候使用的是本地的文件 xff0c 可到最后发现 x
  • clickHouse相关知识详解

    clickHouse相关知识详解 clickHouse介绍大数据技术背景什么是clickHouseclickHouse核心特性clickHouse适用场景clickHouse不适用的场景使用clickHouse的大厂 clickHouse安
  • 抖音数据库解析总结

    目前在抖音打出的包里面 xff1a 在database文件夹下面存在存着许多数据库 xff0c 这个大概挨个梳理了一下 xff0c 有用目前就两个数据库 xff1a 抖音id im db eg 95034530671 im db xff1a
  • openfeign实现原理

    1 openfeign简介 OpenFeign 提供了一种声明式的远程调用接口 xff0c 它可以大幅简化远程调用的编程体验 调用其他服务接口像调用本地服务service方法一样丝滑顺畅 使用示例如下 xff1a 引入依赖 span cla
  • MySQL高阶知识点(一):SQL语句执行流程

    1 一条 SQL查询语句是如何被执行的 MySQL 的基本架构示意图如下所示 xff1a 大体来说 xff0c MySQL 可以分为 Server 层和存储引擎层两部分 Server 层包括连接器 查询缓存 分析器 优化器 执行器等 xff
  • Spring Bean生命周期

    1 概述 之前我们在总结Spring扩展点 xff1a 后置处理器时谈到了Spring Bean的生命周期和其对Spring框架原理理解的重要性 xff0c 所以接下来我们就来分析一下Bean生命周期的整体流程 首先Bean就是一些Java
  • MySQL高阶知识点(二):索引概述

    1 深入浅出索引 索引是一种用于快速查询和检索数据的数据结构 常见的索引结构有 B 树 xff0c B 43 树和 Hash 通常来讲 xff0c 索引就像一本中华字典的目录 xff0c 通过目录可以快速定位查找某个汉字在哪一页 xff0c
  • Spring Boot如何优雅提高接口数据安全性

    1 背景 最近我司业务上需要对接第三方各大银行平台 xff0c 调用第三方接口和提供接口供第三方调用 xff0c 这时候的对外open接口安全性就得重视了 xff0c 再有就是之前我在知乎上发布一篇 Spring Security实现后端接
  • python错误解决:UnicodeDecodeError: ‘utf-8‘ codec can‘t decode byte 0xd1 in position 0: invalid continuat

    当处理文本文档时出现错误 xff1a UnicodeDecodeError utf 8 codec can t decode byte 0xd1 in position 0 invalid continuation byte 可试一下另存为

随机推荐