使用svcutil.exe生成接口时出错

时间:2010-12-22 18:30:34

标签: .net visual-studio wcf svcutil.exe ogc

有人可以帮我生成以下OGC架构的接口(c#)文件吗?

架构文件:Download Schema Files Link

我需要在上面的架构zip文件中为Ordering wsdl创建Web服务。我已经在这几天了,没有运气生成界面。我试过了:

svcutil.exe thewsdl.wsdl /language:c# /out:ITheInterface.cs

svcutil Order.wsdl /out:IOrder.cs

svcutil Order.wsdl Order.xsd ..\ws-addressing\ws-addr.xsd /out:IOrder.cs

svcutil Order.wsdl Order.xsd ws-addr.xsd /out:IOrder.cs

我收到以下错误:

Microsoft (R) Service Model Metadata Tool
[Microsoft (R) Windows (R) Communication Foundation, Version 4.0.30319.1]
Copyright (c) Microsoft Corporation.  All rights reserved.

Error: Cannot read ws-addr.xsd.

    Cannot load file D:\Documents\DEV\SARPilot\Docs\eoschema\schema\OrderSchema\ws-addr.xsd as an Assembly. Check the FusionLogs f
or more Information.

    Could not load file or assembly 'file:///D:\Documents\DEV\SARPilot\Docs\eoschema\schema\OrderSchema\ws-addr.xsd' or one of its
 dependencies. The module was expected to contain an assembly manifest.

2 个答案:

答案 0 :(得分:0)

好的,所以我已经过了这个错误。 (我现在得到更多,但那些是另一个问题)。

我在VS2010中打开了ws-addr.xsd文件并查看了警告列表。一说:

  

警告105 XML编辑器尝试过   将此DTD转换为XSD以便它可以   提供验证和智能感知   当你输入,但它不能   创建有效的XSD架构。也许   这个DTD使用的结构不是   映射到XSD。你可能会得到   关于这个问题的更多信息   使用Create Schema   命令。 D:\ Documents \ DEV \ SARPilot \ Docs \ eoschema \ schema \ ws-addressing \ ws-addr.xsd 3 11 D:... \ schema \

所以我去了“http://www.w3.org/2005/08/addressing/ws-addr.xsd”并下载了正确的并替换了它。

我不再收到警告105,并且不再使用svcutil获取“无法加载文件”错误

答案 1 :(得分:0)

要注意的另一件事是wsdl文件的编码。我收到一个wsdl文件,但未使用UTF-8编码,因此收到了“无法加载文件或程序集”消息。它说汇编的事实是完全误导的,就像Microsoft错误一样。我认为错误消息中应禁止使用“或”一词。无论如何,解决方案是在Notepad ++中打开wsdl并转换为UTF-8。 (编码转换为UTF-8)