Вы можете использовать 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 Version».
[Application.ProductVersion] (https://msdn.microsoft.com/en-US/library/system.windows.forms.application.productversion (v = vs.110) .aspx)? – Fildor
Это не то, что я ищу. Application.ProductVersion будет иметь тот же результат: 1.0.6262.26540. Я хочу, чтобы версия была 1.0.0.12 – itskajo
Можете ли вы посмотреть в AssemblyInfo.cs и проверить, что там для Версии? – Fildor