我正在创建临时报告解决方案,所以我想出了一个这样的方法,它在WCF服务中添加,将从前端客户端调用,
GetEmployeeDetails(int id,bool includeAddressHistory,bool includeSalaryHistory,bool includePositionHistory,bool includeProjectHistory,...永不结束列表)
现在的问题是我需要根据过滤器获取所有数据,然后返回完整的数据集或将其作为流返回,因为我有另一种方法将流返回相同的数据集,
答案 0 :(得分:2)
通常,当您需要传递相当多的参数(无论其类型如何)时,是时候考虑parameter object:
// this is just POCO
public class SearchParameters
{
public string SomeString { get; set; }
public DateTime? SomeDate { get; set; }
public bool? SomeBool { get; set; }
// etc...
}
IEnumerable<SomeEntitites> GetSomeEntitites(SearchParameters searchParameters);
请注意,对于构造函数案例,解决方案可以是构建器模式。
答案 1 :(得分:1)
如果事情变得更复杂,另一种方法是让一个类定义EmployeeDetailsRequestParameters。如果你还做过滤这样的事情,并且除了可以容纳到可枚举的标志之外还有很多东西,这个特别有用。