C# 4.0 删除日期中的时间格式
我将日期作为参数传递,其中daydate是参数C# 4.0 删除日期中的时间格式,c#-4.0,C# 4.0,我将日期作为参数传递,其中daydate是参数 string daydate daydate的内容为2017年3月3日凌晨12:00:00 我这样做是为了消除时间,但时间仍然没有消失 string strCleanDate = String.Format("{0:M/d/yyyy}", daydate); 如何删除时间?这是因为格式设置程序被忽略,因为您正在传递给字符串的实例。格式是字符串,因此占位符将填充您传递的值,并且格式将被完全忽略。如果要应用DateTime格式,则需要传入DateT
string daydate
daydate的内容为2017年3月3日凌晨12:00:00
我这样做是为了消除时间,但时间仍然没有消失
string strCleanDate = String.Format("{0:M/d/yyyy}", daydate);
如何删除时间?这是因为格式设置程序被忽略,因为您正在传递给
字符串的实例。格式是字符串,因此占位符将填充您传递的值,并且格式将被完全忽略。如果要应用DateTime
格式,则需要传入DateTime
类型的实例
第一个修复方法应该是将参数更改为DateTime
类型,而不是string
。否则,调用方可能会传递“HI THERE”
,而您的方法/应用程序将中断,或者更糟糕的是,将该值推送到存储,现在您的存储被无效值污染
您应该将dayDate
作为日期时间值而不是字符串传递。那么格式就可以正常工作。那么你是说先转换成日期时间吗?@user2320476-不,我是说当你需要一个datetime
实例时,不要接受string
作为参数类型。@user2320476-也就是说,应该强制调用方传入datetime
的实例,而不是string。看这个家伙。
public void SomeMethod(DateTime daydate)
{
var dateOnly = dayDate.Date;
}