AssemblyInfo.cs文件:包含程序版本、信息、版权的属性文件

先介绍AssemblyInfo.cs文件中的程序集属性

内容:

using System.Reflection;
using System.Runtime.CompilerServices;

[assembly: AssemblyTitle("")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("")]
[assembly: AssemblyCopyright("")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
[assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyDelaySign(false)]
[assembly: AssemblyKeyFile("")]
[assembly: AssemblyKeyName("")]

其意义如下:

1. [assembly: AssemblyTitle("")]

[assembly: AssemblyTitle("")]代码中”:”前面的assembly表示此属性在程序集范围内发生作用。

类型名:
System.Reflection.AssemblyTitleAttribute
[AttributeUsage(AttributeTargets.Assembly)]
public sealed class AssemblyTitleAttribute : Attribute

此属性描述程序集的名称,如:某某公司某某项目某某模块等,此名称可以是任何合法的字符串,可以有空格。

2. [assembly: AssemblyDescription("")]

类型名:
System.Reflection.AssemblyDescriptionAttribute
Attribute声明:
[AttributeUsage(AttributeTargets.Assembly)]
public sealed class AssemblyDescriptionAttribute : Attribute

功能:
程序集的简单描述,如功能、语言等

3. [assembly: AssemblyDescription("")]
类型名:
System.Reflection.AssemblyDescriptionAttribute

Attribute声明:
[AttributeUsage(AttributeTargets.Assembly)]
public sealed class AssemblyDescriptionAttribute : Attribute
功能:
程序集的简单说明,描述程序集的功能、特性、约束等

4. [assembly: AssemblyConfiguration("")]

类型名:
System.Reflection.AssemblyConfigurationAttribute

Attribute声明:
[AttributeUsage(AttributeTargets.Assembly)]
public sealed class AssemblyConfigurationAttribute : Attribute

功能:
程序集的配置信息,如:零售、发布、调试等,.NET运行时没有使用此属性

5. [assembly: AssemblyCompany("")]

类型名:
System.Reflection.AssemblyCompanyAttribute

Attribute声明:
[AttributeUsage(AttributeTargets.Assembly)]
public sealed class AssemblyCompanyAttribute : Attribute

功能:
程序集所属的公司名称

6. [assembly: AssemblyProduct("")]

类型名:
System.Reflection.AssemblyProductAttribute

Attribute声明:
[AttributeUsage(AttributeTargets.Assembly)]
public sealed class AssemblyProductAttribute : Attribute

功能:
程序集所述的产品名

7. [assembly: AssemblyCopyright("")]

类型名:
System.Reflection.AssemblyCopyrightAttribute

Attribute声明:
[AttributeUsage(AttributeTargets.Assembly)]
public sealed class AssemblyCopyrightAttribute : Attribute

功能:
程序集的版权信息

8. [assembly: AssemblyTrademark("")]

类型名:
System.Reflection.AssemblyTrademarkAttribute

Attribute声明:
[AttributeUsage(AttributeTargets.Assembly)]
public sealed class AssemblyTrademarkAttribute : Attribute

功能:
程序集的商标信息

9. [assembly: AssemblyCulture("")]

类型名:
System.Reflection.AssemblyCultureAttribute

Attribute声明:
[AttributeUsage(AttributeTargets.Assembly)]
public sealed class AssemblyCultureAttribute : Attribute

功能:
枚举的字段表明程序集支持的区域性。程序集也可以指定区域独立性,表明它包含用于默认区域性的资源。运行库将任何区域性属性未设为空的程序集按附属程序集处理。此类程序集受附属程序集绑定规则约束。详细信息,请参见运行库如何定位程序集。

10. [assembly: AssemblyVersion("")]

类型名:
System.Reflection.AssemblyVersionAttribute

Attribute声明:
[AttributeUsage(AttributeTargets.Assembly)]
public sealed class AssemblyVersionAttribute : Attribute

功能:
程序集版本信息,按照4段式保存版本信息,即:主.次要.内部版本.修改版本。在强名称程序集中CLR使用此值来绑定操作。可以使用通配符*来替代内部版本和修改版本,VS将自动为其生成版本号。如定义为“1.0.*”,则VS会自动生成后面的部分。如果设定为*,则每次修改程序后版本号都会自动发生变更。

11. [assembly: AssemblyDelaySign(false)]

类型名:
System.Reflection.AssemblyDelaySignAttribute

Attribute声明:
[AttributeUsage(AttributeTargets.Assembly)]
public sealed class AssemblyDelaySignAttribute : Attribute

功能:
是否使用延迟签名

12. [assembly: AssemblyKeyFile("")]

类型名:
System.Reflection.AssemblyKeyFileAttribute

Attribute声明:
[AttributeUsage(AttributeTargets.Assembly)]
public sealed class AssemblyKeyFileAttribute : Attribute

功能:
包含了公钥(如果使用延迟签名)或者既包含公钥也包含私钥的文件名。此公钥和私钥将作为参数传递至此属性的构造函数。文件名称与输出文件路径(.exe 或 .dll)相关,与源文件路径无关。

13. [assembly: AssemblyKeyName("")]

类型名:
System.Reflection.AssemblyKeyNameAttribute

Attribute声明:
[AttributeUsage(AttributeTargets.Assembly)]
public sealed class AssemblyKeyNameAttribute : Attribute

功能:
表明包含密钥对(作为参数传递至此属性的构造函数)的密钥容器。

那么怎么读取这些文件信息呢?
可以采用以下方法:

object[] att = assembly.GetCustomAttributes(typeof(AssemblyDescriptionAttribute), false);
string title = ((AssemblyDescriptionAttribute)att[0]).Description;
System.Windows.Forms.MessageBox.Show(title.ToString());

其中,可以通过改变typeof中的参数访问不同的属性,注意要将att的类型进行对应的类型转换。

[0] AssemblyInfo.cs文件介绍的更多相关文章

  1. AssemblyInfo.cs文件参数具体讲解

    在asp.net中有一个配置文件AssemblyInfo.cs主要用来设定生成的有关程序集的常规信息dll文件的一些参数,下面是默认的AssemblyInfo.cs文件的内容具体介绍 //是否符合公共 ...

  2. AssemblyInfo.cs文件的作用

    在asp.net中有一个配置文件AssemblyInfo.cs主要用来设定生成的有关程序集的常规信息dll文件的一些參数,以下是默认的AssemblyInfo.cs文件的内容详细介绍 //是否符合公共 ...

  3. WinForm中AssemblyInfo.cs文件参数具体讲解

    在.NET中有一个配置文件AssemblyInfo.cs主要用来设定生成的有关程序集的常规信息dll文件的一些参数,下面是默认的AssemblyInfo.cs文件的内容具体介绍 //是否符合公共语言规 ...

  4. .Net魔法堂:AssemblyInfo.cs文件详解

    一.前言 .net工程的Properties文件夹下自动生成一个名为AssemblyInfo.cs的文件,一般情况下我们很少直接改动该文件.但我们实际上通过另一个形式操作该文件.那就是通过在鼠标右键点 ...

  5. AssemblyInfo.cs文件详解

    版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/qq395537505/article/details/49661555 一.前言 .net工程的Pr ...

  6. C#——Visual Studio项目中的AssemblyInfo.cs文件包含的配置信息

    Visual Studio程序集项目中的AssemblyInfo.cs文件中的内容 using System.Reflection; using System.Runtime.CompilerServ ...

  7. AssemblyInfo.cs 文件信息

    using System.Reflection; using System.Runtime.CompilerServices; using System.Runtime.InteropServices ...

  8. 修改AssemblyInfo.cs自动生成版本号

    一. 版本号自动生成方法 1.把 AssemblyInfo.cs文件中的[assembly:AssemblyVersion("1.0.0.0")]改成[assembly:Assem ...

  9. c#程序中的AssemblyInfo.cs

    在asp.net中有一个配置文件AssemblyInfo.cs主要用来设定生成的有关程序集的常规信息dll文件的一些参数,下面是默认的AssemblyInfo.cs文件的内容具体介绍 //是否符合公共 ...

随机推荐

  1. 浅析如何在Nancy中使用Swagger生成API文档

    前言 上一篇博客介绍了使用Nancy框架内部的方法来创建了一个简单到不能再简单的Document.但是还有许许多多的不足. 为了能稍微完善一下这个Document,这篇引用了当前流行的Swagger, ...

  2. MapControl Application 添加自定义的工具条

    现在想用二次开发做一些东西,然后需要自定义的工具条,但是如何向MapControl Application 添加自定义的工具条呢,经过多次试验后,终于找到了相应的方法(左图是添加自定义的工具条之前,右 ...

  3. Spring AOP的切入点表达式

    在spring Aop中要使用AspectJ的切点表达式语言来定义切点.Spring仅仅支持AspectJ切点指示器的一个子集.下表列出了Spring AOP所支持的AspectJ切点指示器. 在Sp ...

  4. JAVA中断机制详解

    Java提供了中断机制,可以使用它来结束一个线程.这种机制要求线程检查它是否被中断了,然后决定是不是响应这个中断请求.线程允许忽略中断请求并继续执行.Java的中断是一种协作机制.也就是说调用线程对象 ...

  5. php 知识点 --个人笔记

    ##2015-09-06 为防止用户看到错误信息,而出现的不友好界面.故一般性会在php.ini里设置:display_errors = Off;不过在开发的时候,我们有时候需要打开错误信息.这时候, ...

  6. 头皮发麻的HTML课时一

    话说我都不知道有多少天没有更新我的随笔了,不过我忽的一下发现到灵魂深处的罪孽:好吧,不扯淡了,其实就是自己懒得外加上HTML这个东西又实在是很重要,所以良心发现把我自己所学的给记录下来,我会尽量的写的 ...

  7. MySQL数据库操作常用命令

    MySQL数据库操作常用命令DOS连接数据库1.安装MySQL配置好环境2.运行cmd命令net start mysql3.找到mysql文件根目录输入命令mysql -h localhost -u ...

  8. Linux 通过端口转发来访问内网服务

    Rinetd是为在一个Unix和Linux操作系统中为重定向传输控制协议(TCP)连接的一个工具,系统内部服务受系统网服限制外部无法访问,需要通过rinetd映射将内网服务转发出来. 1. 下载解压 ...

  9. Python的join()函数和split()函数

    join()方法 ------------------------------------------------------------------------------------------- ...

  10. mac下eclipse安装svn插件-subclipse

    目前Eclipse最常用的svn插件莫非subclipse,在windows系统下的安装svn client和subclipse比较简单.本文介绍如何在mac安装svn插件和subclipse. 一. ...