如何从Assembly获得buildnumber / revision? (第4位数)

时间:2015-07-29 16:30:15

标签: c# wpf reflection

我们的构建过程会在每次构建时更新版本号的第四位数(buildnumber或revision)。

enter image description here

我使用以下代码尝试获取版本,以便可以在初始屏幕和页面上显示。

extension Dictionary {
    mutating func addEntriesFromDictionary(d:[Key:Value]) { // generic types
        for (k,v) in d {
            self[k] = v
        }
    }
}

为什么版本号中的第4位数始终为零,我可以更改哪些内容来反映内部版本号?

enter image description here

1 个答案:

答案 0 :(得分:1)

任何程序集都有两个元数据:程序集版本和文件版本。装配版本我不知道如何采取它。似乎有一个 AssemblyVersionAttribute 但是当我尝试搜索它时,会返回一个空引用。

但您可以使用此代码获取文件版本:

public static Version GetAssemblyVersion (Assembly asm)
{
    var attribute = Attribute.GetCustomAttribute(asm, typeof(AssemblyFileVersionAttribute), true) as AssemblyFileVersionAttribute;
    return new Version(attribute.Version);
}

通常,我每次都使用同步文件版本=汇编版本,所以我可以使用此代码获取汇编版本。第三方图书馆,根据我的经验,我可以说它也遵循这种模式。