如何在 .NET 中为自定义配置部分启用 configSource 属性?

Posted

技术标签:

【中文标题】如何在 .NET 中为自定义配置部分启用 configSource 属性?【英文标题】:How to enable configSource attribute for Custom Configuration Section in .NET? 【发布时间】:2010-09-28 18:08:24 【问题描述】:

根据here 找到的大量信息,我们如何才能让外部.config 工作?我尝试了用于外部 appSettings 文件的相同设置,但它无法找到我的自定义部分的文件。

<configSections>
...
    <section name="CustomSettings" type="Fully.Qualified.TypeName.CustomSettings, AssemblyName" />
</configSections>
<!-- this works -->
<CustomSettings attrib1="val1" attrib2="val2" .../>

不过……

<!--this does not work-->
<CustomSettings configSource="someExternalFile.config"/>

someExternalFile.config 将包含的位置

<CustomSettings attrib1="val1" attrib2="val2" .../>

有什么想法吗?

【问题讨论】:

【参考方案1】:

实际文件,必须相对于项目输出文件夹放置(默认为“\bin\debug”或“bin\Release”

另外,项目树中的文件,查看文件的属性,并确保“复制到输出目录”设置设置为“始终复制”或“如果较新则复制”

编辑:确保单独的配置文件具有 xml 元素标头。整个文件内容应如下所示:

<?xml version="1.0" encoding="utf-8" ?>
<CustomSettings attrib1="val1" attrib2="val2" .../>

【讨论】:

确保文件有一个 xml 标头元素,如我编辑的答案中所示...另外,您是否收到错误消息“无法找到外部文件...”

以上是关于如何在 .NET 中为自定义配置部分启用 configSource 属性?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Sails.js 中为自定义路由启用 CORS

如何在 app.config 中为自定义部分获取智能感知?

如何在 Visual Studio 中为自定义配置文件添加配置转换?

如何在 EF Core 5 中为自定义 SQL 配置导航属性

如何在 C# 中为自定义 DataTemplateSelector 获取 DataTemplate 的 x:DataType

如何在 WooCommerce 中为自定义产品数据选项卡定义图标