我有一个服务堆栈服务,在同一个命名空间中具有以下请求和响应类
public class GetContactMasterData
{
}
public class GetContactMasterDataResponse
{
public IdDescription[] EntityTypes { get; set; }
public IdDescription[] NameTypes { get; set; }
public IdDescription[] AddressTypes { get; set; }
public ResponseStatus MyResponseStatus { get; set; }
}
我使用soapUI成功测试了该服务。这是回应
<s:Envelope xmlns:s="http://www.w3.org/2003/05/soap-envelope">
<s:Body>
<GetContactMasterDataResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.servicestack.net/types">
<AddressTypes>
<IdDescription>
<Description>Home</Description>
<Id>1</Id>
</IdDescription>
...
</AddressTypes>
<EntityTypes>
<IdDescription>
<Description>Corporation</Description>
<Id>1</Id>
</IdDescription>
...
</EntityTypes>
<MyResponseStatus i:nil="true" />
<NameTypes>
<IdDescription>
<Id>4</Id>
<Description>Other</Description>
</IdDescription>
...
</NameTypes>
</GetContactMasterDataResponse>
</s:Body>
</s:Envelope>
当我创建控制台应用程序来测试此服务时,服务引用会生成一个代理对象。这就是智能感知如何引导您调用 GetContactMasterData 方法
GetContactMasterData(out IdDescription[], out ResponseStatus myResponseStatus, out IdDescription[] NameTypes):IdDescription[] addressTypes
我的问题是:为什么 EntityTypes 和 NameTypes 变成了参数,而 addressTypes 变成了方法的返回类型?