我们有大约30个项目的大型解决方案。我们还有一些通用的代码实用程序,作为该实用程序类的一部分,我们包含了一个GetAssemblyVersionInfo
方法,该方法返回该程序集的版本信息。但是,我们希望获得项目而不是实用程序DLL 的程序集的程序集版本信息。有没有办法让一个实用程序函数根据执行返回另一个程序集的版本信息而不传递文件名?
编辑:
对于那些好奇的人,我用以下方法解决了这个问题:
System.Reflection.Assembly.GetCallingAssembly().GetName().Version
答案 0 :(得分:1)
如果您有程序集名称,则可以将其动态加载到当前AppDomain中以检索版本信息。
Assembly.LoadFrom(string.Format("{0}.dll", "assemblyshortname")).GetName().Version
答案 1 :(得分:0)
我认为您应该使用GetEntryAssembly()
代替GetCallingAssembly()
。