我的一些域对象包含日期范围作为一对开始和结束日期属性:
public class Period {
public DateTime EffectiveDate { get; set; }
public DateTime ThroughDate { get; set; }
}
public class Timeline {
public DateTime StartDate { get; set; }
public DateTime EndDate { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
我发现自己有很多这样的事情:
abstract public int Foo(DateTime startDate, DateTime endDate);
abstract public decimal Bar(DateTime startDate, DateTime endDate);
abstract public ICollection<C5.Rec<DateTime, DateTime>> FooBar(DateTime startDate, DateTime endDate);
Run Code Online (Sandbox Code Playgroud)
最后一个让我想知道......我应该实现一个DateRange类吗?我不知道BCL中有一个.
根据我的经验,使对象层次结构更深入往往使事情复杂化.这些对象确实被发送到ReportViewer控件显示的RDLC报告,但这是次要的.我会将视图弯曲到模型而不是相反.但是,我们并不依赖于属性名称,并愿意与以下内容妥协:
public class DateRange {
public DateTime StartDate { get; set; }
public DateTime EndDate { get; …Run Code Online (Sandbox Code Playgroud)