AssemblyInfo.cs文件详解

     1、.Net工程的Properties文件夹下自动生成一个名为AssemblyInfo.cs的文件,一般情况下我们很少直接改动该文件。但我们实际上通过另一个形式操作该文件。那就是通过在鼠标右键点击项目的属性进入“应用程序”->“程序集信息”,然后修改信息。

    

     2、通过特性(Attribute)来设置程序集(dll文件)的常规信息,供查看或作为配置信息供程序内部使用。

     此文件内容如下:

复制代码
 1 // 程序集标题
 2 [assembly:AssemblyTitle("程序集标题")]
 3 // 程序集描述
 4 [assembly:AssemblyDescription("程序集描述")]
 5 // 产品名称
 6 [assembly:AssemblyProduct("产品名称")]
 7 // 公司
 8 [assembly:AssemblyCompany("公司名称")]
 9 // 合法商标
10 [assembly:AssemblyTrademark("合法商标")]
11 // 指定程序集支持的区域性
12 [assembly:AssemblyCulture("区域性")]
13 // 版权
14 [assembly:AssemblyCopyright("Copyright 2014")]
15 // 配置文件,如零售、发布、调试等信息。程序集在运行时不会使用该信息
16 [assembly:AssemblyConfiguration("")]
17 // 程序集的版本信息由下面四个值组成:
18 //
19 //      主版本
20 //      次版本 
21 //      内部版本号
22 //      修订号
23 //
24 // 可以指定所有这些值,也可以使用“内部版本号”和“修订号”的默认值,
25 // 方法是按如下所示使用“*”:
26 [assembly:AssemblyVersion("1.0.0.0")]
27 
28 // 控制程序集中所有类型对COM的可访问性
29 [assembly:ComVisible(false)]
30 // 如果此项目向 COM 公开,则下列 GUID 用于类型库的 ID
31 [assembly: Guid("77bf07c6-941f-4ba7-b95d-6a5c18401f74")]
复制代码

      3、 对生成的dll文件右键点击属性,即可查看到上述信息。

assembly: 表示特性以程序集作为作用范围。

      4、读取Assembly特性

     以读取 [assembly:AssemblyProduct("")] 为例子

Type t = typeof(Program);
AssemblyProductAttribute productAttr = t.Assembly.GetCustomAttributes(typeof(AssemblyProductAttribute), true)[0] as AssemblyProductAttribute;
Console.WriteLine(productAttr.Product);

     5、注意要点

     1)  [assembly:AssemblyProduct("")] 特性不限于在AssemblyInfo.cs文件中使用,而是可以在任何的.cs文件中使用。

     2) 对于同一个特性,程序集中仅能设置一次,否则编译时将报错。

     示例:

[assembly:AssemblyProduct("")]
namespace{
  public class Demo{
  }
}

 

转载链接:https://www.cnblogs.com/fsjohnhuang/p/3992258.html

posted on   SuperSnowYao  阅读(16655)  评论(0编辑  收藏  举报

编辑推荐:
· 没有源码,如何修改代码逻辑?
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· .NET Core 托管堆内存泄露/CPU异常的常见思路
阅读排行:
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· 没有源码,如何修改代码逻辑?
· DeepSeek R1 简明指南:架构、训练、本地部署及硬件要求
· NetPad:一个.NET开源、跨平台的C#编辑器
· PowerShell开发游戏 · 打蜜蜂

导航

< 2025年2月 >
26 27 28 29 30 31 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 1
2 3 4 5 6 7 8
点击右上角即可分享
微信分享提示