2 วิธีการขยายสำหรับการแก้ปัญหาที่กล่าวถึงข้างต้น
public static bool LiesAfterIgnoringMilliseconds(this DateTime theDate, DateTime compareDate, DateTimeKind kind)
{
DateTime thisDate = new DateTime(theDate.Year, theDate.Month, theDate.Day, theDate.Hour, theDate.Minute, theDate.Second, kind);
compareDate = new DateTime(compareDate.Year, compareDate.Month, compareDate.Day, compareDate.Hour, compareDate.Minute, compareDate.Second, kind);
return thisDate > compareDate;
}
public static bool LiesAfterOrEqualsIgnoringMilliseconds(this DateTime theDate, DateTime compareDate, DateTimeKind kind)
{
DateTime thisDate = new DateTime(theDate.Year, theDate.Month, theDate.Day, theDate.Hour, theDate.Minute, theDate.Second, kind);
compareDate = new DateTime(compareDate.Year, compareDate.Month, compareDate.Day, compareDate.Hour, compareDate.Minute, compareDate.Second, kind);
return thisDate >= compareDate;
}
การใช้งาน:
bool liesAfter = myObject.DateProperty.LiesAfterOrEqualsIgnoringMilliseconds(startDateTime, DateTimeKind.Utc);
string
เป็นตัวแทนในรูปแบบของ aDateTime
อาจจำเป็นต้องมีการแก้ไขเพื่อให้ชัดเจนว่า "ตัด" / "drop" milliseconds หมายถึง "สร้างDateTime
ค่าที่ส่วนประกอบวันที่ / เวลาทั้งหมดเหมือนกันยกเว้นTimeOfDay.TotalMilliseconds
คือ0
" ผู้คนไม่ได้อ่านแน่นอน แต่เพื่อกำจัดความคลุมเครือใด ๆ