AssemblyVersion,AssemblyFileVersion解释以及获取

摘要:
打开可执行程序的属性,该值将显示为ProductVersionGuid:这实际上是COM中提出的一个概念,但只有唯一的ID。为了保持与COM的交互,NET仍然具有此概念。

简而言之,AssemblyVersion:

是程序集的版本,.NET的CLR用,用于标识出该dll的版本信息,用于定义强名称的版本号;
AssemblyFileVersion:
为编译器生成的文件加入版本号,只是一个文件号标识,没有具体的作用,也就是在资源管理器里查看属性时看到的版本;
AssemblyInformationalVersion:
在引用程序集时,这个属性不用于版本检查,它仅用于版本信息。该属性非常适合于指定使用多个程序集的应用程序的版本。
打开可执行程序的属性,这个值就显示为Product Version 
Guid:这个实际上是COM里提出的概念,只是一个唯一的ID,.NET为了维护和COM的交互性,所以还存在这个概念。
[assembly: AssemblyVersion("1.0.0.1")]
[assembly: AssemblyFileVersion("1.0.0.2")]
将第二句注释掉,并将前一句1.0.0.1改为1.0.*后,其后两位版本号会自动递增,然而就概念而言这样做不一定合适。
 
 
代码获取项目版本属性方式:
public string AssemblyFileVersion()
        {
            object[] attributes = Assembly.GetExecutingAssembly().GetCustomAttributes(typeof(AssemblyFileVersionAttribute), false);
            if (attributes.Length == 0)
            {
                return "";
            }
            else
            {
                return ((AssemblyFileVersionAttribute)attributes[0]).Version;
            } 
        }
方法二
   //得到指定程序集版本
        private string GetAssemblyVersion(string name)
        {
            byte[] filedata = File.ReadAllBytes(name + ".exe");
            return Assembly.Load(filedata).GetName().Version.ToString();
      
        }

当然,也可以通过项目的可视化属性配置页面进行 修改版本等信息。

免责声明:文章转载自《AssemblyVersion,AssemblyFileVersion解释以及获取》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇cgroupsSublime Text最舒服的主题下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

随便看看

WebStorm好用的插件推荐

随着时间的推移,编写JavaScript代码很多有用的插件都集成了WebStorm中,在WebStorm中即使不装任何插件,都能很舒服的进行开发网页应用、Node应用。插件对于WebStorm并不是特别的重要,但是某些插件实在是比较好用,所以本篇文章就整理一下比较好用的插件。使用该插件,可以直接在WebStorm中内嵌一个翻译界面。...

docker安装宝塔

主机的/home/www文件夹映射到docker容器的/www(注意:如果文件目录不存在,特权意味着在运行容器时,容器被授予特权,容器有权写入文件。然后问题来了……安装完成后,如果重新启动容器,容器宝塔会丢失吗?不,让我们试试:...

IDEA 运行键是灰色

版权声明:本文为博主原创文章,遵循CC4.0BY-SA版权协议。转载请附上原始来源链接和本声明。本文链接:https://blog.csdn.net/Butterfly_resting/article/details/89388149原因是我们的新项目没有选择源目录,如图所示:解决方案:IDEA提供了选择源目录的快速设置。右键单击src并选择MarkDire...

svn常见问题汇总

要添加到版本库,必须更新工作副本中的文件。5.更新时,系统会提示您文件冲突,将工作副本中的文件与服务器中的文件进行比较“当版本管理系统更改计算机上的工作副本时”,它会尝试将您的意图写入计算机上的日志文件,因此日志文件记录可能与您的上次工作状态不一致。Subversion客户端将在提交内容之前在本地工作副本中写入日志。首先删除隐藏文件夹中tmp下的临时文件。服...

极验验证码破解之selenium

大家好。我是星星在线,我又来了。今天,我给大家带来极性验证码的硒裂解方法。你有点兴奋吗?你们等不及了。让我们直奔主题。首先,随机找到一个特征点,检查元素,看它是否位于div元素,然后查看它后面的位置。距离已确定。以下是移动硒的大量模拟操作。我们只需要确认需要哪些接口。...

C#基础系列过滤器与特性

过滤器和特性结合在一起,在方法上优雅地使用过滤器。3.在过滤器中,。NETFrameWork提供了两种类型:一种是提供给ASP的筛选器。NETMVC在命名空间下使用System.Web。另一个是提供给ASP的过滤器。NETWebApi在命名空间下使用System.Web.Http.Filters。这两种类型不能混合使用,否则无法拦截并生效。...