【问题标题】:How to set the version of a project in VS?如何在VS中设置项目的版本?
【发布时间】:2011-02-12 20:54:54
【问题描述】:

我希望能够在我的 msbuild 中使用 AssemblyIdentities.Version,如何设置/更改它?

【问题讨论】:

    标签: c# .net visual-studio visual-studio-2010 msbuild


    【解决方案1】:

    右键单击Project->Properties->Assembly Information 或(当已经创建属性时)在项目经理Properties->AssemblyInfo.cs

    编辑:对于从 msbuild 自动修改,您可以使用:

    <FileUpdate Files="AssemblyInfo.cs"
       Regex="(\d+)\.(\d+)\.(\d+)\.(\d+)"
       ReplacementText="$1.$2.$3.$(Revision)" />
    

    【讨论】:

    • 我认为 IAdapter 正在寻找在 msbuild 调用中设置版本
    • @David:谢谢,第一眼就错过了。虽然它与手动修改它几乎相同。 @IAdapter:您可以根据需要自动生成整个 AssemblyInfo.cs ;)
    • 您还应该注意一件事。版本的第三个组件通常用于更改程序集/产品/的当前版本...第四个组件可以用作内部版本号的标记,或者作为为旧程序集提供更新而不会发生版本冲突的一种方式。
    【解决方案2】:

    您可以使用GetAssemblyIdentity 任务来完成:

    <Target Name="Version">
      <GetAssemblyIdentity
          AssemblyFiles="$(MSBuildProjectDirectory)\src\MyApp\bin\MyApp.exe">
      <Output
          TaskParameter="Assemblies"
          ItemName="AssemblyIdentities"/>
      </GetAssemblyIdentity>
      ...
    </Target>
    

    AssemblyIdentities 只是一个变量名。它也可以命名为MyAssemblyIdentities,就像在 MSDN 链接中一样。 Version 属性从您的 AssemblyInfo.cs 读取版本。

    另外this SO answer提供了一些关于如何使用GetAssemblyIdentity的示例。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-04-09
      • 1970-01-01
      • 2020-03-07
      • 1970-01-01
      相关资源
      最近更新 更多