我們有大約30個項目的大型解決方案。我們還有一些通用代碼實用程序,作爲該實用程序類的一部分,我們包含一個GetAssemblyVersionInfo
方法,該方法返回該程序集的版本信息。但是,我們希望獲得項目的程序集的程序集版本信息而不是實用程序DLL。有什麼辦法讓一個實用工具函數返回基於執行的另一個程序集的版本信息,而不是傳遞文件名?獲取組件版本信息
編輯:
對於那些誰是好奇,我解決它使用:
System.Reflection.Assembly.GetCallingAssembly().GetName().Version
但是,如果您在項目中調用該行,它將返回項目程序集的'版本'。不是嗎?問題在哪裏呢? – Tigran 2012-08-15 16:55:16
沒錯,但我想我以前發佈的方式失敗了,因爲如果我從一層深度調用效用函數會發生什麼?它會返回另一個實用程序DLL的程序集信息,但我想要的是啓動該過程的整個應用程序。 – keelerjr12 2012-08-15 17:02:40
注意:考慮明確地指定彙編作爲你的'GetAssemblyVersionInfo'方法的參數 - 這將使代碼更清潔,更具可讀性,並允許你以更有意義的方式測試它。 – 2012-08-15 17:06:51