目前textbox我每次发布时都会在应用程序中手动更新版本字段().我想知道是否有办法让我的应用程序从某个地方获取数据并将其显示在框中供我使用.我正在使用VS2012,我只是不确定如何在C#中实现这一点.下面是我正在讨论的VS2012属性窗口的屏幕截图.

新图片:

Ral*_*sen 29
不要忘记检查应用程序是否是networkdeployed否则它将无法在调试模式下工作.
if (ApplicationDeployment.IsNetworkDeployed)
{
this.Text = string.Format("Your application name - v{0}",
ApplicationDeployment.CurrentDeployment.CurrentVersion.ToString(4));
}
Run Code Online (Sandbox Code Playgroud)
Kar*_*son 15
试试这个:
using System.Deployment.Application;
public Version AssemblyVersion
{
get
{
return ApplicationDeployment.CurrentDeployment.CurrentVersion;
}
}
Run Code Online (Sandbox Code Playgroud)
然后主叫方,吸气属性可以去参考Major,Minor,Build和Revision属性,就像这样:
YourVersionTextBox.Text = AssemblyVersion.Major.ToString() + "."
+ AssemblyVersion.Minor.ToString() + "."
+ AssemblyVersion.Build.ToString() + "."
+ AssemblyVersion.Revision.ToString();
Run Code Online (Sandbox Code Playgroud)
小智 8
此外,我们可以使用重载ToString的System.Version
using System.Deployment.Application;
public Version AssemblyVersion
{
get
{
return ApplicationDeployment.CurrentDeployment.CurrentVersion;
}
}
YourVersionTextBox.Text = AssemblyVersion.ToString(1); // 1 - get only major
YourVersionTextBox.Text = AssemblyVersion.ToString(2); // 1.0 - get only major, minor
YourVersionTextBox.Text = AssemblyVersion.ToString(3); // 1.0.3 - get only major, minor, build
YourVersionTextBox.Text = AssemblyVersion.ToString(4); // 1.0.3.4 - get only major, minor, build, revision
Run Code Online (Sandbox Code Playgroud)