Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何从DataContract对象生成XSL&XSD_C#_Xml_Xslt_Datacontractserializer - Fatal编程技术网

C# 如何从DataContract对象生成XSL&XSD

C# 如何从DataContract对象生成XSL&XSD,c#,xml,xslt,datacontractserializer,C#,Xml,Xslt,Datacontractserializer,我有一组代码,使用DataContractSerializer输出许多不同的XML文件 我希望能够输出一个XSL和XSD以及每个XSL和XSD 这纯粹是为了学习。 此外,我还没有包括任何代码,因为我认为这是一个相当普遍的问题 到目前为止,我找到的唯一方法是使用svcuti.exe。 datacontractserialiser是否能够在运行时执行此操作 还是我对XSD和XSL的理解不正确 读了更多的书后,我了解到XSL需要为XML定义,而不是随XML一起定义,这需要我手动完成 编辑:我有Svcu

我有一组代码,使用DataContractSerializer输出许多不同的XML文件 我希望能够输出一个XSL和XSD以及每个XSL和XSD

这纯粹是为了学习。 此外,我还没有包括任何代码,因为我认为这是一个相当普遍的问题

到目前为止,我找到的唯一方法是使用svcuti.exe。 datacontractserialiser是否能够在运行时执行此操作

还是我对XSD和XSL的理解不正确

读了更多的书后,我了解到XSL需要为XML定义,而不是随XML一起定义,这需要我手动完成


编辑:我有Svcutil工作,但是我想知道是否可以在代码中这样做。最后,我希望将XSD的副本放在与XML文件相同的位置

您可以使用svcutil.exe从DataContract中提取XSD

svcutil.exe /dataContractOnly *.dll
文件单元:

编辑:
要在运行时执行此操作,请使用

,这很有帮助,并允许我提取XSD,但是我最初询问是否可以在运行时执行此操作。我误解了,因此更新了答案。这将有助于了解您希望支持的场景,因为WCF中通常有相当广泛的支持。