C#计算当前半年

Mar*_*rco 0 c# time datetime date

我想从今天开始计算c#的最后半年.

我场景的前半年是01/01/ - 06/30 /.我的场景中的第二个半年是07/01/ - 12/31 /.

你会如何使用DateTime来计算?

示例:今天是2014年3月15日 - >上半年:07/01/2013 - 12/31/2013

示例:今天是2014年7月15日 - >上半年:2014年1月1日 - 2014年6月30日.

提前致谢!;-)

GvS*_*GvS 7

您只需要查看6个月前的月份,并确定其中的一半:

DateTime start, end;

var date = DateTime.Today.AddMonths(-6);
var month = date.Month;
var year = date.Year;
if (month <= 6) {
    start = new DateTime(year, 1, 1);
    end = new DateTime(year, 6, 30);
} else {
    start = new DateTime(year, 7, 1);
    end = new DateTime(year, 12, 31);
}
Run Code Online (Sandbox Code Playgroud)