如何在文本框中显示发布版本?

Sha*_*ill 31 c#

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

从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,BuildRevision属性,就像这样:

YourVersionTextBox.Text = AssemblyVersion.Major.ToString() + "."
                        + AssemblyVersion.Minor.ToString() + "."
                        + AssemblyVersion.Build.ToString() + "."
                        + AssemblyVersion.Revision.ToString();
Run Code Online (Sandbox Code Playgroud)

  • 您是否在Windows窗体项目中引用了"System.Deployment.dll"? (3认同)

小智 8

此外,我们可以使用重载ToStringSystem.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)