保存配置节错误 - 元素合并为属性

时间:2009-07-14 16:31:44

标签: asp.net configuration-files configurationsection

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

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

  <savedReports xmlns="SavedReportSchema.xsd">
      <resultsSets dataViewId="1" id="4203bb88-b0c4-4d57-8708-18e48f0a1d2d">
          <selects keyId="1" sortOrder="1" />
      </resultsSets>
  </savedReports>

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

<savedReports xmlns="SavedReportSchema.xsd">
  <resultsSets>
    <savedReport id="1">
      <selects>
        <select keyId="1" sortOrder="1"/>
      </selects>
    </savedReport>
  </resultsSets>
</savedReports>

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

1 个答案:

答案 0 :(得分:0)

原来AddRemoveClearMapAlternate是解决问题中引用问题所需的选项。