我在一个项目中使用 Excel-Dna ,该项目中,连接字符串存储在名为connections.config
的外部文件中,该文件在App.config
中被引用。构建项目时,两个配置文件都将被复制到bin文件夹中,App.config
文件将按原样重命名为<Name>-AddIn64-packed.xll.config
。
问题在于打包的xll
仍然依赖于两个配置文件。将连接字符串直接包含在App.config
中时,一切工作正常,但是我需要将其保留在源代码之外。
关于如何进行的任何想法?
答案 0 :(得分:0)
正如Hanselman在他的博客中讨论的那样。托管自己的NuGet Server。
我的个人偏好是Choco Nuget Server。
使用NuGet
打包文件nuget pack -version 0.0.1
Push将您的NuGet软件包上传到服务器
nuget push -source \ mycompany \ repo \ mypackage.1.0.0.nupkg
推荐:删除所有用户凭据,例如密码或用户名
答案 1 :(得分:0)
如果{。{1}} XLL上的App.config
上的configSource
外部配置设置不支持-packed
,如果主.config文件+外部文件实际上不在{ {1}} XLL是。
如果要使用-packed
,则必须将这些外部文件与configSource
XLL放在同一文件夹中。
例如
-packed
<Name>-AddIn-packed.xll
<Name>-AddIn-packed.xll.config
<Name>-AddIn64-packed.xll
<Name>-AddIn64-packed.xll.config
或者,如果您希望将连接字符串存储在外部文件中,但仍嵌入在connections.config
XLL中,则完全不使用-packed
,请添加{{1} }作为程序集的嵌入式资源,以及read your connection strings from there。