我想将一个产品版本添加到表单。 string version = System.Reflection.Assembly.GetExecutingAssembly().GetName().Version.ToString();
set_source
这是我找到的解决方案,哪些可行。但版本将类似于" 1.0.6262.26540"。
我可以更改规则,还是可以获得Visual Studio以编程方式生成的发布版本?
答案 0 :(得分:2)
您可以使用ApplicationDeployment.CurrentDeployment.CurrentVersion.ToString()
。但是,只有运行ClickOnce发布者安装程序安装的程序版本(ApplicationDeployment.IsNetworkDeployed
返回true
)时,此功能才有效。
当您直接启动已编译的程序集时(例如在调试期间),在尝试访问InvalidDeploymentException
属性时将获得CurrentDeployment
。为防范这种情况,您可以使用以下内容:
string CurrentVersion
{
get
{
return ApplicationDeployment.IsNetworkDeployed
? ApplicationDeployment.CurrentDeployment.CurrentVersion.ToString()
: "1.0.0.0"; // Fallback version string, or retrieve from assembly as in your question
}
}
如果您不使用ClickOnce Publish功能分发您的软件,我不确定您是否可以访问“发布版本”。