zoukankan      html  css  js  c++  java
  • 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

  • 相关阅读:
    【BZOJ4892】【TJOI2017】—DNA(后缀数组+ST表)
    【BZOJ1563】【NOI2009】—诗人小G(决策二分栈优化dp)
    【洛谷P5249】【LnOI2019】—加特林轮盘赌(概率dp)
    【Ural1519】— Formula1(轮廓线dp)
    【BZOJ3728】【PA2014】—Final Zarowki(思维题)
    【BZOJ3730】—震波(动态点分治)
    【Hackerrank (70)】—Range Modular Query(莫队+暴力)
    【省选模拟】—Cactus(圆方树+dfs序)
    【BZOJ2125】—最短路(圆方树+树链剖分)
    python 基础 列表
  • 原文地址:https://www.cnblogs.com/supersnowyao/p/8478162.html
Copyright © 2011-2022 走看看