我正在尝试使用svcutil从XSD生成托管C ++代码。我正在使用的命令行是
“C:\ Program Files(x86)\ Microsoft SDKs \ Windows \ v7.0A \ bin \ xsd.exe”MyTest.xsd / classes /language:"Microsoft.VisualC.CppCodeProvider7,CppCodeProvider,Version = 10.0.0.0 ,Culture = neutral,PublicKeyToken = b03f5f7f11d50a3a“/ namespace:MyTestApp
但是,我收到如下错误消息
错误:对于交换机/语言,值'microsoft.visualc.cppcodeprovider7,cppcodeprovider,version = 10.0.0.0,culture = neutral,publickeytoken = b03f5f7f11d50a3a'无效。没有为该语言定义编码提供程序。
我知道我在安装Visual Studio时安装了CppCodeProvider。我也试过/语言:cpp无济于事。我能够在C#中生成代码而对同一个XSD没有任何问题。
有谁知道我做错了什么?
答案 0 :(得分:2)
在MSDN Library文章中明确说明了svcutil.exe:
/language:<language>
值:c#,cs,csharp,vb, visualbasic,c ++,cpp
默认值:csharp
简短形式:/ l
注意:交换机仅支持C ++ 对于随附的代码提供商 Visual Studio 2005 SP1。
我认为那时候是.NET 2.0 SDK。没有其他问题,从那以后语言没有改变。为什么不使用csharp?能够在.NET中无痛地混合语言是其巨大的资产之一。