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

如何阻止Visual Studio发布API时篡改连接字符串?

解决Visual Studio发布时篡改连接字符串的问题

检查发布配置的连接字符串设置

  • 右键项目 → 选择「发布」,打开发布配置界面
  • 在发布设置的「连接字符串」板块,确认是否存在自动填充或替换的配置:
    • 若有针对MyDB的替换项,直接删除该条目,或选择「不替换」选项
    • 确保「使用此连接字符串(可能会覆盖web.config或appsettings.json)」的选项未被勾选

修改发布配置文件(.pubxml)

如果上述界面未找到问题,直接编辑项目的发布配置文件:

  • 在项目的Properties/PublishProfiles目录下找到对应的.pubxml文件(比如FolderProfile.pubxml)
  • 打开文件,检查是否存在类似以下的节点,若有则直接删除:
    <ItemGroup>
      <MsDeployParameterValue Include="$(DeployParameterPrefix)ConnectionStrings:MyDB" />
    </ItemGroup>
    
  • 保存文件后重新发布

禁用用户机密的自动替换

如果项目启用了用户机密,可能会在发布时被自动注入:

  • 右键项目 → 选择「管理用户机密」
  • 检查机密文件中是否存在ConnectionStrings:MyDB条目,若值为1dc67b3c则删除该条目
  • 关闭用户机密窗口后重新发布

检查项目的构建事件

  • 右键项目 → 选择「属性」→ 切换到「生成事件」标签
  • 检查「后期生成事件命令行」中是否有脚本自动生成或修改appsettings.production.json,若有则删除对应脚本内容

手动添加appsettings.production.json到项目

若不想让VS自动生成该文件,可手动创建:

  • 在项目根目录新建appsettings.production.json,内容保留正确的连接字符串(与主配置文件一致)
  • 右键该文件 → 选择「属性」,设置「复制到输出目录」为「如果较新则复制」或「始终复制」
  • 发布时VS会使用你手动创建的文件,而非自动生成替换后的版本

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.23 11:27:10