我目前正在尝试将此XSD作为服务参考添加到我的ASP .Net MVC 4项目(http://voip.letscall.pt/PortalWebAPI/metadata?xsd=1)。问题在于我是做错了还是文件存在某种问题。 当我尝试使用XSD.exe来解析XSD时,它会给我这个错误
未定义的complexType ' http://schemas.datacontract.org/2004/07/VS.PortalWebAPI:SupportTypes:Paging' 用作复杂类型扩展的基础。
Paging SupportType用于complexTypes,例如
<xs:complexType name="GetPbxCompanyContacts">
<xs:complexContent mixed="false">
<xs:extension xmlns:q13="http://schemas.datacontract.org/2004/07/VS.PortalWebAPI.API.SupportTypes" base="q13:Paging">
<xs:sequence>
<xs:element minOccurs="0" name="BranchId" type="xs:int" />
<xs:element minOccurs="0" name="Login" nillable="true" type="xs:string" />
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="GetPbxCompanyContacts" nillable="true" type="tns:GetPbxCompanyContacts" />
PortalWebAPI有5个文件:
的XSD
服务类型(voip.letscall.pt/PortalWebAPI/metadata?xsd=1)
Wcf数据类型(voip.letscall.pt/PortalWebAPI/metadata?xsd=0)
Wcf集合类型(voip.letscall.pt/PortalWebAPI/metadata?xsd=2)
的WSDL
soap11(voip.letscall.pt/PortalWebAPI/soap11)
soap12(voip.letscall.pt/PortalWebAPI/soap12)
但是,我还没有设法找到如何使用它。我只需要一个,还是需要全部导入?
我还尝试通过参考文献 - &gt;将其直接添加到项目中。添加服务参考,只有一个或全部,但没有运气。
答案 0 :(得分:1)
XML架构文档中应该有一个名为complexType
的{{1}},其目标命名空间映射到Paging
前缀。查找文档:
q13
它应包含targetNamespace="http://schemas.datacontract.org/2004/07/VS.PortalWebAPI.API.SupportTypes"
类型。
您还应该有一个Paging
声明:
xs:import
如果未在该命名空间中声明<xs:import namespace="http://schemas.datacontract.org/2004/07/VS.PortalWebAPI.API.SupportTypes"
schemaLocation="/path/to/your-schema.xsd"/>
类型,或者您未导入架构,则当您尝试在扩展程序中使用该架构时,将无法找到该架构。