问题标签 [configurationsection]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
3089 浏览

.net - 需要创建一个动态的 ConfigurationSection 也持有该类型

我需要创建一个配置部分,它能够将键值对存储在 app.config 文件中,并且无论它们的类型如何,都可以在运行时添加键值对。值保持其原始类型也很重要。我需要扩展以下接口

在运行时,我可以这样说:

我尝试使用 System.Configuration.Configuration.AppSettings,但问题在于它将键值对存储在字符串数组中。

我需要的是实现 System.Configuration.ConfigurationSection,我可以在其中控制单个设置的序列化方式。我注意到 Visual Studio 生成的设置就是这样做的。它使用反射来创建所有设置键。我需要的是动态地做这个运行时。

0 投票
2 回答
4978 浏览

c# - 帮助使用 ConfigurationSection 从配置文件中正确读取

我正在尝试创建类以使用 ConfigurationSection 和 ConfigurationElementCollection 从我的配置文件中读取,但我遇到了困难。

作为配置示例:

0 投票
4 回答
1601 浏览

c# - 如何:在不通过 GetSection 调用加载的情况下使用 ConfigurationSection

我想加载一个特定的 ConfigurationSection,但 CLR 加载程序集的方式给我带来了一些麻烦:

我的 CustomConfigurationSection 定义在一个特定的程序集上,程序集加载的整个过程无法找到该程序集,因为我使用的是一个外部工具,它基本上加载了我的程序集,通过反射发现了一些关于它的信息,然后尝试“安装”它。非常类似于尝试安装 Windows 服务时的 installutil。

我要疯了,因为 ConfigurationManager 试图在原始进程的位置下为我的 ConfigurationSection 找到所需的程序集。我肯定知道这一点,因为我正在使用 SysInternals Process Monitor。有人可以提供一些解决方法或方向吗?

谢谢!

0 投票
1 回答
220 浏览

asp.net - ASP.NET 自定义配置条目/ConfigurationSections + 业务逻辑验证?

我的 .config 文件中有一些自定义配置条目。所有负载/工作正常。我想知道是否有适当的方法来检查已提供的数据——添加一些业务逻辑。例如...

现在,我想确保每个自定义部分的 uniqueName 都是唯一的。我是否需要在隐含 ConfigurationSection 的自定义类之外手动执行此操作,或者我可以在其中执行此操作吗?(例如,在读取配置文件或其他内容后,有点像委托?)

0 投票
5 回答
10836 浏览

c# - 自定义配置、ConfigurationElements 和 ConfigurationProperties

最近三天我一直在网上搜索,找不到任何关于这个问题的参考资料。我创建了一个自定义配置类以与我的 app.config 一起使用。一切正常。当不需要(配置元素的)配置属性并且未在 app.config 中定义时,就会出现问题。似乎为配置属性返回了默认值。有谁知道如何确定该属性是否未在 app.config 中定义?(我一直在尝试发布我的 app.config,但不知道该怎么做……有人知道吗?)

0 投票
1 回答
904 浏览

c# - 以编程方式将部分添加到从 app.config 读取的配置中

我正在开发一个组件/组件,该组件/组件将分发给其他开发人员并包含在他们的系统中。

为了尽量减少他们必须做的工作,所有配置都在一个单独的文件 (my.config) 中完成。

我当前的问题是我正在使用的库需要将配置添加到应用程序的 app.config 文件中。我无法修改它,以便它读取我的自定义配置文件。

有什么方法可以将部分/设置添加到当前配置中,使其表现得好像是从 app.config 中读取的一样?

我可以添加到 app.config,所以它只能在运行时工作。

谢谢,乔纳斯

0 投票
1 回答
644 浏览

web-config - web.config custom section inheritance

I'm trying to get a custom web.config section to get inherited by an application's web.config in a website subfolder.

The custom section works fine in the main website, but it appears the custom section isn't inherited.

Other elements in the web.config are getting inherited - it's just this custom section which isn't.

Is this by design? Is there a way to turn on inheritance for custom sections?

0 投票
1 回答
2173 浏览

.net - 强制 ConfigurationManager 重新加载所有部分

我正在编写一个配置系统,其中 app.config 文件是从分布在多个位置的各种配置片段动态构建的。该系统目前工作如下:

  1. Bootstrapper 构建配置文件。
  2. Bootstrapper 使用新的配置文件作为配置文件初始化新的 AppDomain。
  3. 结果,新的 AppDomain 被配置为使用新的配置文件并且一切正常。

我们希望摆脱这种多 AppDomain 方法;它增加了一层复杂性,尤其是在涉及非托管库和其他遗留代码时。

在移动到一个 AppDomain 时,工作流程将更改为:

  1. Bootstrapper 构建配置文件。
  2. Bootstrapper 将配置文件合并到自己的配置文件中。
  3. Bootstrapper 刷新其 ConfigurationManager 缓存。
  4. Bootstrapper 在同一个 AppDomain 中启动主应用程序。

似乎 ConfigurationManager 将部分缓存在内存中。例如,如果我在第 3 步之前阅读 AppSettings,我必须调用:ConfigurationManager.RefreshSection("appSettings");事实上,我必须确保引导程序使用的任何部分都已刷新。

我能够遍历新配置文件中的所有配置部分并强制刷新它们,但是,这会强制配置管理器加载配置文件中引用的任何程序集。如果可能的话,我想推迟这个。如果有办法使 ConfigurationManager 当前在内存中的内容无效?

0 投票
1 回答
323 浏览

asp.net - 保存配置部分错误 - 元素合并为属性

我创建了一个配置部分设计器项目来表示从我的 Web 应用程序读取和保存所需的自定义部分的节点。我能够成功地创建配置元素和集合的实例,但是当我使用引用的System.Configuration.Configuration对象保存配置并发出save时,元素将作为属性合并到它们的父级中。该问题的一个示例概述如下:

调用引用的Configuration.save后,输出如下:

正如我的配置部分设计器项目中定义的(也由生成的 xsd 确认),输出应与以下内容匹配:

有任何想法吗?BasicMapAlternate但是,当我将元素集合类型设置为时,AddRemoveClearMapAlternate它们不会合并,而是以“add”而不是“select”或“savedReport”为前缀,导致验证关闭。

0 投票
1 回答
342 浏览

c# - 控制台应用程序中的 ConfigurationErrorsException

已添加条目“MyCustomElement”。

我对这个有点难过。这个控制台应用程序在过去几周添加了很多自定义配置部分,没有任何问题。我们已经运行该应用程序一段时间了,就在最近(过去两天内)我们遇到了这个问题。

在安装 3.5、虚拟目录等之后,我已经阅读了旧 Web 应用程序发生这种情况的信息。但是,我们在这里一直是 3.5,这是一个控制台应用程序。

最近发生的唯一变化是添加了一个新的自定义配置部分。当错误发生时,我们自然地删除了该部分,但是随后返回错误,并将以下配置部分(以前工作)命名为罪魁祸首。