小编wel*_*air的帖子

ROR:支架与否?

我喜欢脚手架,它对原型设计非常有帮助.但是我们应该使用脚手架来开发应用程序吗?

ruby-on-rails

4
推荐指数
1
解决办法
893
查看次数

在C#中优雅地处理XML文件中的验证错误

描述有点长,请耐心等待.我想处理并验证一个巨大的XML文件,并记录触发验证错误的节点并继续处理下一个节点.XML文件的简化版本如下所示.

我想要执行的是遇到任何验证错误处理节点'A'或其子节点(XMLException和XmlSchemaValidationException)我想停止处理当前节点记录节点'A'的错误和XML并继续下一步节点'A'.

<Root>
  <A id="A1">
     <B Name="B1">
        <C>
          <D Name="ID" >
            <E>Test Text 1</E>
          </D>
        <D Name="text" >
          <E>Test Text 1</E>
        </D>        
      </C>
    </B>
  </A>
  <A id="A2">
    <B Name="B2">
      <C>
        <D Name="id" >
          <E>Test Text 3</E>
        </D>
        <D Name="tab1_id"  >
          <E>Test Text 3</E>
        </D>
        <D Name="text" >
          <E>Test Text 3</E>
        </D>
      </C>
    </B>
</Root>
Run Code Online (Sandbox Code Playgroud)

我目前能够通过使用带有XMLReader的ValidationEventHandler从XmlSchemaValidationException中恢复,这会抛出我在XML Processing代码中处理的Exception.但是在某些情况下,触发XMLException会导致进程终止.

以下代码片段说明了我正在使用的当前结构; 它很混乱,也欢迎代码改进建议.

    // Setting up the XMLReader
    XmlReaderSettings settings = new XmlReaderSettings();
    settings.ConformanceLevel = ConformanceLevel.Auto;
    settings.IgnoreWhitespace = true;
    settings.CloseInput = true;
    settings.IgnoreComments = true; …
Run Code Online (Sandbox Code Playgroud)

.net c# xml

3
推荐指数
1
解决办法
5841
查看次数

标签 统计

.net ×1

c# ×1

ruby-on-rails ×1

xml ×1