XSD.EXE 用于从 XSD 生成 F# 类

aka*_*nom 5 f# xsd.exe

我正在尝试使用 XSD.EXE 工具从 XSD 生成一些类文件。是否能从生成的文件中获得任何东西是另一个问题,但我想看看生成了什么。我找到了这个参考资料,其中指出:

\n\n
\n

感谢 F#\n Visual Studio 团队的 Luke,这意味着我可以这样做:

\n
\n\n
xsd.exe fpml-asset-4-z.xsd /classes /l:\xe2\x80\x9dMicrosoft.FSharp.Compiler.CodeDom.FSharpCodeProvider, FSharp.Compiler.CodeDom, Version=1.9.9.9, Culture=neutral, PublicKeyToken=a19089b1c74d0809\xe2\x80\xb3\n
Run Code Online (Sandbox Code Playgroud)\n\n

这太棒了。我没有相同版本的代码 dom - 所以查看 GAC 我将行更改为:

\n\n
xsd.exe RIXML-datatypes-2_3_1.xsd /classes /l:"Microsoft.FSharp.Compiler.CodeDom.FSharpCodeProvider, FSharp.Compiler.CodeDom, Version=2.0.0,0, Culture=neutral, PublicKeyToken=a19089b1c74d0809"\n
Run Code Online (Sandbox Code Playgroud)\n\n

其产量:

\n\n
\n

C:\\Users\\Desktop\\CSharpSamples\\ResearchUploader\\Fc-RixmlLib>xsd.exe\n RIXML-datatypes-2_3_1.xsd /classes\n /l:"Microsoft.FSharp.Compiler.CodeDom.FSharpCodePr\ n ovider、FSharp.Compiler.CodeDom、\n Version=2.0.0,0、Culture=neutral、\n PublicKeyToken=a19089b1c74d0809"\n Microsoft (R) Xml 架构/数据类型\n 支持实用程序 [Microsoft (R) .NET \n 框架,版本 4.0.30319.1]\n 版权所有 (C) Microsoft Corporation。\n 保留所有权利。错误:给定\n 程序集名称或代码库无效。\n(HRESULT 异常:0x80131047)

\n\n

如果您需要更多帮助,请输入“xsd /?”。

\n
\n\n

想法?

\n

Tom*_*cek 1

这对我来说看起来是正确的。您能否仔细检查该程序集是否已安装在 GAC 中?
您可以在“Visual Studio 命令提示符”中输入以下命令:

> gacutil -l | find "FSharp.Compiler.CodeDom"
Run Code Online (Sandbox Code Playgroud)

我有:

FSharp.Compiler.CodeDom, Version=2.0.0.0, Culture=neutral, 
PublicKeyToken=a19089b1c74d0809, processorArchitecture=MSIL
Run Code Online (Sandbox Code Playgroud)