c# - 检索 XSD 中可选元素的默认值
问题描述
我有以下 XML:
<Person>
<Name>James</Name>
<Age>18</Age>
</Person>
在验证此 XML 的 XSD 中,我想添加另一个元素。我希望此元素是可选的,但具有默认值 - 因此,如果在验证 XML 时缺少它,则会使用默认值填充它。假设新元素是“NumberOfSiblings”,默认为 0。我这样做是这样的:
<xs:element name="Person">
<xs:complexType>
<xs:sequence>
<xs:element name="Name" type="xs:string"/>
<xs:element name="Age" type="xs:integer" />
<xs:element name="NumberOfSiblings" type="xs:integer" minOccurs="0" default="0" />
</xs:sequence>
</xs:complexType>
</xs:element>
所以现在让我们假设我在 .Net/C# 中解析上面的 XML。有没有办法验证它,所以它会自动创建具有默认值的元素,因此解析器不会崩溃?如果不是,从 XSD 获取此默认值的正确方法是什么?
解决方案
推荐阅读
- c++ - 通过不同方式访问数组/向量中的相同元素
- yii2 - Yii2 表单验证 - 仅在填写密码字段时比较密码重复
- reactjs - 将基于 React / Preact 的小部件库集成到旧版 Web 应用程序中
- amazon-web-services - Cloudformation AWS CLI 使用多个嵌套堆栈查询所有堆栈资源
- ssl - 从 Let's Encrypt 从头开始生成 CRT 和 KEY ssl 文件
- logging - 链接 log4j 日志和 zipkin 跟踪 id
- python - 如何在 Python 中根据 1 或 0 为背景着色
- sonarqube - SonarQube:项目验证失败,模块已经是项目的一部分
- node.js - npm 审计未识别在较低级别解决的问题
- angular - 如何获取 JSON 内部对象的数据?