如何使用visual studio命令提示符从C#类文件生成xsd?

use*_*676 4 c# xsd visual-studio-2010 xsd.exe visual-studio

我正在使用以下命令,但它不起作用:

C:\ Program Files(x86)\ Microsoft Visual Studio 8\VC\bin> xsd/c/l:cs SubsystemReg.cs

让我们说这是我的班级:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;

namespace PaymentControllerGUI
{
    public class EmptyClass
    {
    }
}
Run Code Online (Sandbox Code Playgroud)

而我正在尝试这个.

C:\ Program Files(x86)\ Microsoft Visual Studio 8\VC\bin> xsd/c/l:cs EmptyClass.cs

错误:

命令行参数无效:'SubsystemReg.cs'

Yai*_*vet 7

使用XSD.exe,您应该传递DLL编译类的文件路径,而不是现在传递的CS类代码文件.

例如,如果编译了您的类SubsystemReg.dll,请调用XSD.exe,如下所示:

XSD.exe C:\SubsystemReg.dll
Run Code Online (Sandbox Code Playgroud)

以下是MSDN的一个示例:

以下命令为程序集myAssembly.dll中的所有类型生成XML模式,并将它们作为schema0.xsd保存在当前目录中.

xsd myAssembly.dll  
Run Code Online (Sandbox Code Playgroud)

更新:

您可以通过指定Type的完全限定路径,从DLL为特定类型生成XSD,例如:

xsd.exe YourAssembly.dll /type:YourNamespace.YourType
Run Code Online (Sandbox Code Playgroud)

根据你的情况,只需:

xsd.exe PaymentControllerGUI.dll /type:PaymentControllerGUI.EmptyClass
Run Code Online (Sandbox Code Playgroud)

  • 不,不要那样做.这是惯例:`xsd.exe YourAssembly.dll/type:YourNamespace.YourType` (2认同)