我有一个函数,它返回 C# 项目的程序集文件版本(在 Visual Studio 中)。问题是,它不位于主项目中,因此它不是返回实际应用程序的版本,而是返回它所在的项目(程序集)的版本。我尝试使用GetCallingAssembly()
来获取而是主要项目,但没有运气。即使我让它工作,如果我通过多个项目链接我的调用,我可以想象它很容易坏掉。有没有办法通过名称获取项目的版本?例如,如果我的主项目名为 SolutionName.ProjectName,而主窗口(它是一个 WPF 项目)名为 MainWindow.xaml(如果这有什么不同的话)。
我当前的代码:
private string GetFileVersion()
{
System.Reflection.Assembly assembly = System.Reflection.Assembly.GetCallingAssembly();
FileVersionInfo fvi = FileVersionInfo.GetVersionInfo(assembly.Location);
return fvi.FileVersion;
}