これは非常に恥ずかしいことです。自分で解決策を見つけようとしましたが、実際には知識が不足しているため、ここに質問を投稿しています。
私のサービスを呼び出すと、私のwcfサービスはこの値を返します
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
<s:Body>
<GetProcessLocationsResponse xmlns="http://tempuri.org/">
<GetProcessLocationsResult >
<a:ProcessLocationData>
<a:Id>1</a:Id>
<a:Name>IL</a:Name>
</a:ProcessLocationData>
<a:ProcessLocationData>
<a:Id>2</a:Id>
<a:Name>MD</a:Name>
</a:ProcessLocationData>
<a:ProcessLocationData>
<a:Id>3</a:Id>
<a:Name>NY</a:Name>
</a:ProcessLocationData>
</GetProcessLocationsResult>
</GetProcessLocationsResponse>
</s:Body>
</s:Envelope>
私のサービスクラスでは、このメソッドを書きました
public Array GetProcessLocations()
{
return this.GetSoapServiceClient().GetProcessLocations().ToArray();
}
public List<ProcessLocationData> GetProcessLocationsOnlyName()
{
return this.GetSoapServiceClient().GetProcessLocations().ToList();
}
以下のように xyz.class でこのサービスを呼び出します
Array GetProcLocation= new GatewayService().GetProcessLocations();
これは、ID や名前などのオブジェクト全体を返します
しかし、「GetProcessLocationsOnlyName」メソッドを呼び出して名前だけを取得しようとしていました
私は以下のようにしようとしていました
array ProcName= ProcessLocationData.Name
配列内の (IL,MD,NY) のようなサービス内のすべての名前を返す必要がありますが、ProcessLocationData をまったく表示できませんでした。
別の方法で、配列を分割(GetProcLocation)し、名前だけを取得して新しい配列に追加しようとしていましたか? それは理にかなっていますか?
誰かが私を正しい道に案内してください。事前に感謝します。