问题标签 [xsd.exe]
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.
c# - XmlSerializer 不填充子元素
我使用 XSD.EXE 将 XSD 转换为对象。这工作正常,我可以使用 XMLSerializer 反序列化就好了,除了不填充作为数组生成的子元素。
即使 XML 中有数据,当我使用以下代码时它也不会填充它:
根元素都可以正常工作,只是不是这种 XML 数据的子元素:
我是否遗漏了 XSD.EXE 不包括的一些提示或其他内容?
c# - xmlserializer 验证
我正在使用 XmlSerializer 反序列化 Xml 档案。但我发现生成的类 xsd.exe 只提供读取 xml 的能力,但没有验证。例如,如果文档中缺少一个节点,则生成的类的属性字段将为空,而不是像我预期的那样抛出验证异常。我怎样才能做到这一点?谢谢!
c# - 使用联合从 XSD 生成 .Net 类
我一直在努力为与筛选相关的独立包创建代表 HR-Xml 3 规范的类。我遇到了几个问题,但目前我认为主要问题是 xsd.exe 中缺乏对 xsd:union 语句的支持。
当 Xsd.exe 遇到由 union 定义的简单类型时,它会忽略该定义并使用内置的字符串数据类型来代替它。
来自 - http://msdn.microsoft.com/en-us/library/bc57azyw%28VS.85%29.aspx
我在各种论坛和新闻组上看到的唯一解决方案是重组 XSD 以不使用联合?但是,即使我需要的实体子集很小,联合语句的数量也接近 100。也许这是唯一的解决方案?
我已经坚持了好几天了,除了“不,那行不通”之外,还没有找到任何真正有用的东西。最后,我需要让它以某种方式工作。任何关于工具、重新设计、转换器的建议,任何能让我获得这些课程的东西!我什至开始考虑生成 Java 类,然后将它们转换为 C#……我不知所措
提前致谢!我当然希望有一些解决方案!
最后,我们决定在第一阶段不实施 HR-Xml,也许当我们回到它时,我会有更好的运气。不过,如果有人读到这篇文章并有任何建议,请留下反馈,因为我计划在一段时间内对此进行监控。
c# - 使用 XSD.exe 时如何为属性指定名称?
我正在编写一个 XSD 模式,它有一个描述文件结构的元素:
当我通过 XSD.exe 运行它时,我最终得到了FileStructure
、Folder
和File
. FileStructure 有一个名为 Folder 的属性,它包含一个文件夹数组;Folder 有一个名为 Folder1 的属性,它包含一个文件夹数组。
我不希望将 Folder 上的属性称为 Folder1。使用 XSD.exe 时如何指定属性和类型的名称?
c# - 使用 xsd.exe 创建虚拟方法
我正在使用使用 xsd.exe 工具从 XML 模式生成的类。它目前会生成一个巨大的(32k 行).cs 文件。然后我使用 XMLSerializer 对模型的部分进行序列化和反序列化。我需要覆盖这些类中的属性,因此我在单独的文件中有部分类,它们覆盖了其中一些生成的方法。但是,这意味着每次模式更改时都要进入并将数百个方法标记为虚拟方法。有没有办法让 xsd.exe 工具在生成方法时将它们标记为虚拟?
.net - 使用 XSD 生成类,每个类都没有基类
不知道这里有什么合适的标签......
不久前,我创建了一个批处理脚本,它在运行时将使用 Microsoft Windows SDK 中的 xsd.exe 文件(此处使用 v6.1)将 C:\api\ 中的所有 .xsd 文件转换为 C# 类。
问题是……我有 50 个左右生成的 .cs 文件,包括基类。在每一个内部,它都会生成一个基类的副本,所以我最终在每个类中都有一个基类,而我只需要它在一个类中。
有没有一种方法可以防止在每个类中都没有基类的情况下生成类?我仍然希望创建基类(base.cs),但不是在其他 49 个类中。
编辑:
我尝试了以下方法:
返回的响应始终是列表中的最后一个文件。
c# - 为什么某些生成的 C# 类属性与 XSD 属性不匹配?
我正在从 OTA(开放旅游联盟)XSD 文件生成 C# 类。您可以从这里下载 XSD 文件。
我在 Visual Studio 命令提示符中使用以下命令创建 C# 类:
OTA_VehLocDetailsNotifRQ.POS[0].RequestorID
我希望在里面找到一处房产ID
。然而,XSD.exe 工具生成的属性名为ID_Context
.
你能解释它为什么这样做,以及我是否能够强制它生成正确的 ( ID
) 属性名称?
请不要建议我编辑生成的文件,因为这不是可维护的方法。
接受答案后进一步编辑:
更仔细地查看 XSD 并将引用替换为其属性组定义,可以在其属性组中看到 ID 属性:
我相信这是 XSD 工具中的一个错误。
.net - Dot net 3.5 中的 XML:如何将 xml 文档加载到从模式生成的类的对象中?
我在文件“packetTemplate.xsd”中为xml定义了模式。使用ms工具“xsd.exe”我生成了与模式相对应的类“PacketTemplate”。Does dot net提供的api可以通过引用文件来加载xml文档并返回对象类 PacketTemplate。
c# - xsd.exe 在来自 xsd 文件的数据集中创建无效约束
我的 xsd 中有一个允许的最小长度为零的序列。当我尝试将不包含任何序列元素的 xml 文件加载到 xsd.exe 创建的 DataSet 中时,我收到一个异常,表明我的文件违反了 DataSet 的约束之一。xml 文件根据架构进行验证,所以我知道它是有效的。我可以做些什么来使该工具生成有效的数据集?
编辑:如果我将架构更改为此生成的代码可以正常工作。不过,这对我来说似乎是错误的,因为它似乎暗示我可以拥有其中没有任何内容的序列项目,这没有任何意义。
c# - xsd.exe 生成的 DataSet 类会产生大量警告
由于从单个 .xsd 文件生成的单个 DataSet 中缺少 xml 注释,我收到了数百条警告。由于这是一个自动生成的文件,因此手动编辑它们不是一个好主意。有什么方法可以禁用文件(CS1591)的警告或将导入到 xml 注释中的值放入 xsd 文件中?