zoukankan      html  css  js  c++  java
  • .Net程序版本号的含义和版本控制机制

    .net程序版本号的格式是4端十进制数字

    比如

    2.5.729.2

    他们依次是

    Major Number:主版本号

    Minor Number:副版本号

    这两个号码是对外的版本号,也就是说上面这个程序是2.5版的

    Building Number:编译版本号

    比如如果一天编译一次的话,那么每天编译版本号加一,上边的程序经过了729天的开发。

    Revision Number:再版版本号

    比如某一天的一次编译有重大的bug,在编译就是这版本号加一。

    所以后两个版本号是内部版本号。

    这是微软公司使用的版本号模式,在开发中最好遵守。

    编程时可以获得的三个版本号及其区别:

    使用Visual Studio 编程时,生成的AssembIyInfo.cs中可以加入以下信息,并自动更新版本号。

    AssemblyFileVersion

    C#自定义属性

    [assembly: AssemblyFileVersion("1.0")]

    AssemblyInformationalVersion

    C#自定义属性

    [assembly: AssemblyInformationalVersion("1.0.*")]

    CLR并不关心上面这两个属性,他们只是一个描述性的信息,编译后他们存储在Win32 Version Resources中

    AssemblyVersion

    C#自定义属性

    [assembly: AssemblyVersion("1.0.*")]

    当命名强类型的数据集时C#使用这个版本号,编译后他被存储在AssemblyDef manifest datable中

    这个版本号是很重要的,他是一个程序集的唯一标识

    同样的当我们引用一个现有的.net程序集的时候,它的版本号被编译到AssemblyRef table中,也就是说,只有能够在指定的路径找到指定的文件而且他的版本号是正确的,.net程序才可以正常运行。引用程序集更换版本号,必须更新引用,并且重新编译。这应该就是.net避免以往Win32程序'Dll Hell'的机制所在。

  • 相关阅读:
    删除指定目录下的文件及子文件
    PHP简单实现“相关文章推荐”功能的方法(此方法不是自创)
    微信开发中自动回复(扫码、关注推事件)
    方式三(API方式)C++手动加载CLR运行托管程序(CLR Hosting)
    分享 N种方法使用C++调用C#.NET库
    redis 持久化之 RDB & AOF
    redis 慢查询、Pipeline
    redis 发布订阅、geo、bitmap、hyperloglog
    redis5.0 数据结构与命令
    Linux 下安装 redis5.0
  • 原文地址:https://www.cnblogs.com/oyjj/p/2133014.html
Copyright © 2011-2022 走看看