问题标签 [configurationelement]

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 投票
1 回答
982 浏览

asp.net - .NET ConfigurationElementCollection.Add 方法不会将项目添加到集合

我有一个在 ASP.NET 4.0 下运行的自定义配置部分,我想保存更改。涉及的类是:

  • QueueConfiguration:一个配置元素
    • QueueCollection Queues // 要维护的队列列表
  • QueueCollection:一个 ConfigurationElementCollection
  • 队列:一个配置元素

这有效:

这不起作用(并且不会引发错误):

这也不起作用(并且不会引发错误):

我的第一次是三个配置部分中的一个被标记为只读。但是,当我调试时,IsReadOnly() 方法为我的 QueueConfiguration 和 QueueCollection 实例返回 false。

我的 QueueCollection 类包括这个片段:

当我单步执行代码时,到达了这一行,调用了 base.BaseAdd,但 Count 属性没有增加。就好像 BaseAdd 只是忽略了请求。

有什么建议么?(我希望我遗漏了一些明显的东西!)

0 投票
1 回答
118 浏览

.net-2.0 - ConfigurationElement——属性的组合?

假设我已经定义了一个AdapterElement : ConfigurationElement带有属性的自定义TypeName并且Version. 由于Name并且Version唯一地标识了该Type属性,我想强制配置文件具有以下结构之一:

我可以轻松地标记这三个属性,IsRequired = false并让用户指定想要的组合。但是,以下组合无效,我想禁止它们:

有什么简单的方法可以实现这一目标吗?

0 投票
1 回答
460 浏览

c# - 如何检查两个属性或它们都不存在于配置元素中?

有没有办法写一些ConfigurationValidatorAttribute或以其他方式允许两者Prop1Prop2存在或都不存在?

已编辑

在下面的配置文件中,当我尝试获取时,Domains我想获取运行时异常,因为domain3元素必须同时具有Prop1Prop2不具有它们,但不能仅具有其中一个!

就像IsRequired在运行时检查并在元素没有Name属性时抛出错误一样。

0 投票
3 回答
8097 浏览

c# - ConfigurationSection 多个枚举值

有没有办法在配置部分设置多个枚举值?

就像你在 .net 中所做的那样object.Filter = Filter.Update | Filter.Create;

支持这样的东西吗?

0 投票
1 回答
657 浏览

c# - 在运行时覆盖/替换 app.config 中的 ConfigurationElements

我有两个 ConfigurationElement 对象(其中一个在正在运行的应用程序的 app.config 中),我需要用另一个替换它。我还有第一个元素所属的 ConfigurationElementCollection。看起来 Add 和 Remove 方法在内部受到保护。难道我不能在运行时更新 ConfigurationElementCollection 对象吗?如果是这样,有哪些替代方案?

谢谢。

0 投票
1 回答
307 浏览

c# - 拦截配置元素集

我想在设置另一个属性时设置一个配置元素属性。我用 getsection 加载配置元素,显然没有触发 set 函数。

代码:

感谢您的帮助

0 投票
2 回答
629 浏览

c# - 在 Machine.config 和 App.config 中存储相同的密钥

我在 machine.config 中保存了一个自定义配置部分,其结构如下:

现在,我希望能够通过将覆盖存储在 app.config 中来覆盖相同的键设置,如下所示:

所以当我在代码中阅读它时,我会得到 - dev="devkey1", prod="prodkey1", local="localkey1"

问题是当我像这样阅读我的自定义配置部分时:

我收到一条错误消息,指出已添加密钥:

“已经添加了条目‘testkey’。”

我修改了ConfigElementCollection.Add函数来检查相同的键是否已经存在但它不起作用。

有任何想法吗?

0 投票
1 回答
726 浏览

c# - .NET 配置:读取指定类型中的值

我的 web.config 中有以下节点

读入以下 ConfigurationProperty

这正确地建立了我在节点上设置的类型,但是我怎样才能返回该类型的值?我尝试过的所有内容都返回以下异常:

找不到支持“对象”类型的属性“值”转换为/从字符串转换的转换器。

0 投票
2 回答
404 浏览

c# - 访问 ConfigurationElementCollection 中的元素时出现奇怪的错误

我有一个带有 ConfigurationElementCollection 的 ConfigurationSection,如下所示:

代码如下所示:

但是当我尝试访问“描述”元数据时,我得到了 NullReferenceException。这是因为 config.SampleConfig.Metadata["description"] 始终为空。但是在调试窗口中,我可以看到“元数据”有 4 个元素,并且“描述”在那里。

在访问“标题”时也是如此。但是“文件夹名”和“文件名”没问题!!!

我不确定出了什么问题,在过去的 4 个小时里我一直在努力解决这个问题!

请帮帮我。

谢谢。

0 投票
1 回答
1548 浏览

c# - 是否可以从 xml 文本创建 ConfigurationElement?

我们有一个自定义类,它继承自ConfigurationElement被调用SignalConfigurationElement并使用该属性定义了一堆ConfigurationProperty属性。

该类SignalConfigurationElement是更大的配置元素层次结构的一部分,并且没有构造函数。我可以通过ConfigurationManager.GetSection()调用检索整个配置,提供根元素的名称,即app.config 文件SystemConfiguration中定义的名称。<configSections>

我无法控制自定义配置元素,因此无法更改它们以提供构造函数。我也无法修改 app.config,因为它被更大的应用程序使用。

是否可以创建SignalConfigurationElement给定 XML<signals>条目字符串的实例或集合?该类没有构造函数,因此我假设ConfigurationManager.GetSection我们的其他应用程序用于检索整个配置(不是我想要的)的调用使用反射来创建其实例。

代码(根本无法更改任何内容。):

应用程序配置

课程: