我经常需要创建一个.Net类库,它需要app.config来处理诸如数据库连接字符串之类的事情.但是,这些设置必须位于调用应用程序的app.config或web.config中.如果我想在多个应用程序中分发DLL,那就很麻烦了,因为我必须将这些设置复制到每个应用程序的app.config中.
我考虑过从类库中通过代码手动读取配置设置,但这也是一个很大的痛苦.有没有人有任何关于在类库中加载app.config设置的最佳方法的建议?
为什么Microsoft不允许您将构建配置链接到发布配置文件.相反,它告诉您使用主VS接口中的下拉列表.

我发现这非常烦人,因为我们使用配置转换来根据我们发布的环境(例如数据库连接字符串)更改配置设置.我们还签入.Publish.xml文件,以便将发布路径保存在源代码管理中.如果有人忘记更改构建配置,他们可能会意外地将测试发布到生产,反之亦然.如果我们可以使用发布配置文件检查构建配置选择,我们就不会遇到此问题.
有谁知道微软是否计划在未来改变它?
当我的Web.config转换时,它会在我的ApplicationSettings中的结束值标记之前添加一个新行.此新行显示在设置中并导致异常.例:
Web.config文件:
<setting name="FilePath" serializeAs="String">
<value>c:\path</value>
</setting>
Run Code Online (Sandbox Code Playgroud)
Web.Debug.config:
<setting name="FilePath" serializeAs="String" xdt:Transform="Replace" xdt:Locator="Match(name)">
<value>c:\path</value>
</setting>
Run Code Online (Sandbox Code Playgroud)
发布Web.config:
<setting name="FilePath" serializeAs="String">
<value>c:\path
</value>
</setting>
Run Code Online (Sandbox Code Playgroud)
最终值标签位于其自己的行上会导致问题.有谁知道如何让它停止这样做?谢谢.