WSDL Web Service从C#返回空数组

Kem*_*ran 4 c# soap wsdl web-services asp.net-web-api

我正在使用具有以下地址的Web服务:https: //api.n11.com/ws/CityService.wsdl

该服务有一个方法'GetCities'.您可以使用http://wsdlbrowser.com/进行测试

问题是当我从C#获得Cities时,它返回一个包含81个元素的数组,但是'cityId'和'cityName'变为null.

在此输入图像描述

请帮忙!

我的代码如下所示:

        GetCitiesRequest request = new GetCitiesRequest();
        CityServicePortClient port = new CityServicePortClient();

        GetCitiesResponse getCitiesResponse = port.GetCities(request);

        var list = getCitiesResponse.cities;
Run Code Online (Sandbox Code Playgroud)

And*_*tel 6

得到它了!!!

Visual Studio正在搞乱Order参数XmlElementAttribute,因此,在您的References.cs文件中更改以下内容:

[System.Xml.Serialization.XmlElementAttribute(Form=System.Xml.Schema.XmlSchemaForm.Unqualified, Order=0)]
public long cityId 
Run Code Online (Sandbox Code Playgroud)

[System.Xml.Serialization.XmlElementAttribute(Form=System.Xml.Schema.XmlSchemaForm.Unqualified, Order=1)]
public long cityId 
Run Code Online (Sandbox Code Playgroud)

[System.Xml.Serialization.XmlElementAttribute(Form=System.Xml.Schema.XmlSchemaForm.Unqualified, Order=1)]
public string cityCode
Run Code Online (Sandbox Code Playgroud)

[System.Xml.Serialization.XmlElementAttribute(Form=System.Xml.Schema.XmlSchemaForm.Unqualified, Order=0)]
public string cityCode
Run Code Online (Sandbox Code Playgroud)