C# 不确定如何在此类上实现IEnumerable
继续开发我在以前的文章中提到的API,我遇到了以下情况: 我需要能够访问服务器返回的响应列表 网络服务 问题是我不确定如何在这个类上实现IEnumerableC# 不确定如何在此类上实现IEnumerable,c#,api,C#,Api,继续开发我在以前的文章中提到的API,我遇到了以下情况: 我需要能够访问服务器返回的响应列表 网络服务 问题是我不确定如何在这个类上实现IEnumerable ... public class ResponseBodyResponse { public ResponseListResponse ResponseList { get; set; } public class ResponseListResponse { public ResponseIn
...
public class ResponseBodyResponse
{
public ResponseListResponse ResponseList { get; set; }
public class ResponseListResponse
{
public ResponseInfoResponse ResponseInfo { get; set; }
public class ResponseInfoResponse
{
public string RequestId { get; set; }
public string RequestType { get; set; }
public DateTime RequestDate { get; set; }
public string RequestStatus { get; set; }
public string Error { get; set; }
public string Memo { get; set; }
}
public ResponseListResponse()
{
ResponseInfo = new ResponseInfoResponse();
}
}
public ResponseBodyResponse()
{
ResponseList = new ResponseListResponse();
}
...
在有人问我之前我拿到了xsd文件的副本,但是,使用xsd.exe生成类会导致文件混乱,类名冲突,导致1000多个不明确的命名错误。您确实应该从web服务返回一个具体的集合,例如列表或数组,而不是实现
IEnumerable
,即使是列表和数组(和其他集合)实现它。序列化的关键不是IEnumerable
此外,嵌套类结构使代码难以使用
由于我不确定您使用上述代码的意图,下面是一个示例
public class Road
{
public Car[] Cars { get; set; } // this can be also `List<Car>`
}
public class Car
{
// stuff
}
公共级道路
{
公共汽车[]汽车{get;set;}//这也可以是`列表`
}
公车
{
//东西
}
你能提供一个例子吗?我相信值得注意的是,这个集合无论如何都会实现IEnumerable
,或者不实现?嵌套的类结构是在前一篇文章中建议的。我对OOP非常陌生,所以我在这里没有专业知识:)如果你对类结构有更好的建议,我洗耳恭听。同时,我将给出一个Try.@ Dayiel.Audio的建议,如果所有的类都以“响应”开头,你应该考虑为ITI创建一个命名空间,知道它在这里没有显示,但是每个API都被分解成它自己的命名空间:报告,命令,每个API中的inventory等是一系列类,用于以请求/响应方式获取订单状态。ie GetReportStatusRequest和GetReportStatusResponse。