而某些情況時常要讀出版號做某些判斷或秀在 "about" 之類的畫面上,
就目前知道的有三種方法可以取得 Version 此屬性值。
第一種方法是取得 FullName 資訊,
至於為什麼這些東西叫 FullName 我也不了解,方法如下
using System.Reflection;
string strAsmFullName = Assembly.GetExecutingAssembly().FullName;
可得此串資訊
//strAsmFullName = "AsciiSln, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null"
此時再用 split 逗號的方式去取得第2個索引鍵值即可得版本號。
再來第二種方法就是讀取 WMAppManifest.xml 檔案,
因為這是一個標準的 Xml 檔,解讀上並不麻煩,且可以得到比較多的資訊,
簡單的Parse如下
XDocument appManifestXML = XDocument.Load(“WMAppManifest.xml”);
if (appManifestXML != null)
{
// 向下找到 App tag 中的 Version Attribute 即可
}
第三種方法就是使用 System.Reflection.AssemblyName 類別,
這是最方便的一招,但取出的資訊就不如 Parse WMAppManifest.xml來得多,
簡單的範例如下
using System.Reflection;
AssemblyName assembly = new AssemblyName(Assembly.GetExecutingAssembly().FullName);
string strFullVersion = assembly.Version.ToString();
//也可以方便的取得 Major 與 Minor
string strMajor = assembly.Version.Major.ToString();
string strMinor = assembly.Version.Minor.ToString();
string strName = assembly.Name;
沒有留言:
張貼留言