问题标签 [xsd2code]
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.
java - 如何将 XSD 转换为 Java 字符串中的父子结构?
从上面的结构中,我需要得到一个字符串列表,如下所示:
rootElement
rootElement.names
rootElement.places
rootElement.places.place
c# - 在 xsd 类中访问 Xml 元素属性
我有一个从 xsd 生成的 c# 类。当我想赋予元素价值时
// 这工作 res.data 在这里我找不到 id 和 value,例如我该怎么办res.data.id="something"
我有一个 xml:
生成这个 xsd :
并使用 xsd.exe 我为它生成了类
c# - xsd2code 在序列化列表时创建额外的嵌套集合
我一直在使用 xsd2code v3.4。到目前为止,我已经接近让它工作了,但是我面临一个明显的问题,我似乎找不到任何解决方案。在序列化对象后生成 XML 时,它会添加一个额外的复杂类型,该类型的名称与类完全相同。这是我目前得到的。请注意它是如何在订单行之后添加不必要的集合的:
这就是我真正想要的:
是否有一些我使用不正确的设置?我已将其设置为与 List 集合一起使用。似乎这个问题只存在于从此工具生成的类的集合中。
编辑:添加由 xsd2code 生成的设计器类的一些片段。请注意,这个文件非常大(几乎 10k 行......),所以我不会在这里发布整个内容,而是与采购订单行元素集合相关的块:
c# - 如何在 .NET 中从 XSD 生成强类型的 .NET 请求对象
我收到了许多 XSD 文件——它们非常大——用于保险定价引擎,所以你可以想象,它包含许多嵌套的复杂类型。人员、地址、车辆、汽车警报、超速定罪等。这是一个包含单个复杂类型的子集:
我已经成功地使用 xsd.exe 和 xsd2code 来生成基于模式定义的类,但是,生成的类不是强类型的,并且包含对象数组,例如:
理想情况下,我希望 Vehicle 类具有许多属性,这些属性是其他类的实例,以便我可以使用 automapper 从我的域模型映射到请求对象,序列化为 XML 并发送请求。
但是创建这些类型的方式,我丢失了有关我需要构建的请求对象结构的任何信息。一切都需要逐个属性地显式映射。然而,尽管摆弄了 xsd2code 中的所有设置和 xsd.exe 的开关,但我似乎无法让它生成任何我想要的东西。
有没有办法做我想做的事,还是我需要改变我的方法?
xsd - 如何对 xsd:dateTime 施加分钟限制?
我读过我们可以对 xsd:datetime 字段使用 minInclusive 和 maxInclusive 限制。但是如何确保我的 dateTime 字段不会出现在未来 5 分钟内?我知道如何在 java 中处理它。但我希望在架构级别进行验证。请帮我。
c# - XSD2Code 类需要包含元素集合的重复命名元素
给定 XSD,例如:
我希望 XML 像:
我使用 XSD2Code 生成 C# 类,因此我可以轻松地从 Web 服务反序列化 XML。但他们工作不正常——他们像我的例子一样成功地加载了一个测试 XML,但accident
元素为零。
所以我决定扭转这个过程:
这发出了以下 XML:
如果我尝试反序列化该 XML,它就可以正常工作。但请注意,有一个accident
不正确的嵌套,我不知道它会这样做或如何修复它!
这似乎是一个类似的问题,但由于它没有引起太多关注并且不包括 XSD,我不确定:xsd2code 在序列化列表时创建额外的嵌套集合
c# - 无法从 xml 反序列化多态列表
我使用 XmlSerializer 对由 Xsd2Code 从 xsd 文件生成的类从 xml 文件反序列化,其中元素扩展基本元素。
这是一个简化的示例:
生成的代码:
XML:
和反序列化代码:
var serializer = new XmlSerializer(typeof(Garage));
The specified type is abstract: name='Vehicle', namespace='', at <Vehicle xmlns=''>.
我在反序列化行上遇到异常。
如果我从 XSD 中的 Vehicle 元素中删除抽象属性,我会得到一个空引用异常,因为garage.Vehicles[0]
无法强制转换为Car
.
我希望能够反序列化然后转换为Car
and Truck
。我怎样才能使这项工作?
c# - xsd2code 元素被列表替换
我的 *.xsd 文件中有以下代码
但是当我用 xsd2code 生成这段代码时,我得到一些奇怪的输出,其中 foo 中的 bar 和 baz 属性是节点列表。我需要 bar 和 baz 作为包含节点列表的类。我怎样才能做到这一点 ?
c# - 生成的 xsd2code 从 XmlChoiceIdentifierAttribute 引发错误
我有这部分和.xsd:
使用我从 xsd2code 获得的这段代码:
这给了我这个输出:
但如果 StartTime 是枚举选择,我希望是这样的:
但是当我使用这个装饰时(也来自 xsd2code):
我抛出一个异常说:
{“缺少选择‘Item’的序列化所需的‘TimeElementName’成员。”}
我无法解释为什么它会引发此错误,因为我似乎记得在我编辑班级的其他部分之前它正在工作,并且当我调试代码时,它也收到TimePeriod
了正确的值并且直到异常才被抛出我打了这一行: var serializer = new XmlSerializer(this.GetType());
有没有另一种方法来获得我想要的输出或解决这个异常。