我想返回包含item数组的响应 我希望能够使用任何具有此响应的类。因此,item数组是一个通用的IList属性。
我的客户端应用重用了Response和Dto类库。当尝试更新服务引用失败时;没有生成代理类。我搜索并弄清楚我需要使用方式来修复这个通用列表。
我怎么能做到这一点?
响应级别:
namespace x.Response
{
[DataContract]
public class BlockDataResponse<T> : ResponseBase
{
[DataMember]
public IList<BlockDataDto<T>> DataList { get; set; }
}
}
响应类中的项类:
namespace x.Dto
{
[DataContract]
public class BlockDataDto<T>
{
[DataMember]
public int RecordIndex { get; set; }
[DataMember]
public T Data { get; set; }
}
}
任何类型的课程:
namespace x.Dto.Definitions
{
[DataContract]
public class AbcDto : DtoBase<AbcDto>
{
[DataMember]
public string Property1 {get; set;}
//...
}
}
服务方式:
[OperationContract]
BlockDataResponse<AbcDto> GetAbcData(int startIndex, int blockSize);
答案 0 :(得分:0)
确定。我刚刚解决了我的问题。
响应级别:
namespace x.Response
{
[DataContract]
public class BlockDataResponse<T> : ResponseBase
{
[DataMember]
public IList<T> DataList { get; set; }
}
}
响应类中的项类:
namespace x.Dto
{
[DataContract]
public class BlockDataDto<T>
{
[DataMember]
public int RecordIndex { get; set; }
[DataMember]
public T Data { get; set; }
}
}
任何类型的课程:
namespace x.Dto.Definitions
{
[DataContract]
public class AbcDto : DtoBase<AbcDto>
{
[DataMember]
public string Property1 {get; set;}
//...
}
}
服务方式:
[OperationContract]
BlockDataResponse<BlockDataDto<AbcDto>> GetAbcData(int startIndex, int blockSize);