首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Excel DNA -使用Config变换的最佳方法

Excel DNA -使用Config变换的最佳方法
EN

Stack Overflow用户
提问于 2020-05-20 00:03:10
回答 1查看 406关注 0票数 0

我有一个项目,让我们称之为'ProjectX‘,需要使用Excel。发展是成功的,但我无法解决一个问题。在为不同的环境(例如DEV、UAT和PROD )构建时,项目使用配置转换来更新app.config中的值。

这里的问题是:当我为特定环境(如DEV )构建时,会按预期进行转换。但是,ProjectX-AddIn64-packed.xll.config不进行转换,这是Excel在XLL中使用的配置。我不知道该怎么做,任何帮助都将不胜感激。

约束:I只能部署一个文件,即XLL。

我尝试过/研究过的事物:

  1. app.config重命名为ProjectX-AddIn64-packed.xll.config
  2. 使用生成事件
  3. 编辑ExcelDna.Build.props以尝试重写默认构建/打包过程
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-05-20 00:35:10

在本文撰写之时,Excel中目前不支持App.config转换.目前的一个解决办法是,在应用转换之后,将.xll.config文件替换为构建结束时的.dll.config文件的内容。

有许多不同的方法可以选择这个文件替换..。例如,您可以在构建后事件中运行脚本,或者将一个新的MSBuild目标添加到在复制文件的ExcelDnaBuild任务之后运行的.csproj文件中。

例如。

代码语言:javascript
运行
复制
<Target Name="CopyAppConfig" AfterTargets="ExcelDnaBuild">
  <Copy SourceFiles="$(TargetPath).config" DestinationFiles="$(TargetDir)MyAddIn-AddIn.xll.config" />
  <Copy SourceFiles="$(TargetPath).config" DestinationFiles="$(TargetDir)MyAddIn-AddIn-packed.xll.config" />
  <Copy SourceFiles="$(TargetPath).config" DestinationFiles="$(TargetDir)MyAddIn-AddIn64.xll.config" />
  <Copy SourceFiles="$(TargetPath).config" DestinationFiles="$(TargetDir)MyAddIn-AddIn64-packed.xll.config" />
</Target>

您可以在我们的GitHub回购中了解更多有关此信息的内容:

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61902860

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档