You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何控制Visual Studio 2013中SQL Server CLR项目的程序集版本号

控制Visual Studio 2013 SQL Server CLR项目的程序集版本号

我来帮你解决这个版本号控制的问题,分手动递增和自动递增两种实用方案,都是实际开发中验证过的方法:

手动递增版本号

如果只是偶尔需要更新版本,手动修改是最直接的方式:

  • 右键你的SQL Server CLR项目,选择属性
  • 在属性窗口切换到应用程序标签页,点击程序集信息按钮
  • 在弹出的对话框里,直接修改版本和文件版本字段(格式为主版本.次版本.内部版本.修订版本,比如把1.0.0.0改成1.0.1.0)
  • 确定保存后重新构建项目,部署到SQL Server的程序集就会使用新的版本号

注意:如果程序集已经部署到SQL Server,更新版本后需要重新部署(选择替换现有程序集),或者用SQL语句更新:

ALTER ASSEMBLY YourAssemblyName
FROM 'C:\Your\Assembly\Path\UpdatedAssembly.dll'
WITH PERMISSION_SET = SAFE; -- 根据你的项目权限设置调整

实现构建时自动递增版本号

如果需要每次构建都自动更新版本号,有两种常用方式:

方法1:用通配符自动递增修订号

Visual Studio 2013支持通过程序集信息文件的通配符实现自动递增:

  • 打开项目里的Properties\AssemblyInfo.cs文件
  • 找到以下两行代码:
    [assembly: AssemblyVersion("1.0.0.0")]
    [assembly: AssemblyFileVersion("1.0.0.0")]
    
  • 将AssemblyVersion的修订号替换为*,比如:
    [assembly: AssemblyVersion("1.0.0.*")]
    [assembly: AssemblyFileVersion("1.0.0.0")] -- 注:文件版本不能用通配符,若要同步需用下面的脚本方法
    
  • 这样每次构建时,Visual Studio会自动递增修订号(内部版本号基于日期生成,修订号是当天的构建次数)

方法2:预构建脚本实现自定义递增逻辑

如果需要更灵活的版本规则(比如递增主/次版本、自定义递增步长),可以添加预构建事件脚本:

  1. 右键项目→属性→生成事件→预生成事件命令行
  2. 输入PowerShell脚本实现修订号自动递增(示例):
    $assemblyPath = "$(ProjectDir)Properties\AssemblyInfo.cs"
    $versionRegex = '\[assembly: AssemblyVersion\("(\d+)\.(\d+)\.(\d+)\.(\d+)"\)\]'
    $content = Get-Content $assemblyPath -Raw
    $content -match $versionRegex | Out-Null
    $major = $matches[1]
    $minor = $matches[2]
    $build = $matches[3]
    $revision = [int]$matches[4] + 1
    $newVersion = "[assembly: AssemblyVersion(`"$major.$minor.$build.$revision`")]"
    $content = $content -replace $versionRegex, $newVersion
    Set-Content $assemblyPath $content -Encoding UTF8
    
  3. 同理可以修改AssemblyFileVersion的规则,确保文件版本和程序集版本同步
  4. 保存设置后,每次构建前脚本会自动执行版本递增

提示:使用脚本前建议备份AssemblyInfo.cs,团队开发时要确保所有成员的环境兼容该脚本(比如PowerShell版本要求)

内容的提问来源于stack exchange,提问作者user1063108

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.20 09:21:35