C# 从数据集中的datetime字段中删除时间
相同的问题在堆栈中可用,但没有答案。我有一个数据集C# 从数据集中的datetime字段中删除时间,c#,asp.net,datetime,C#,Asp.net,Datetime,相同的问题在堆栈中可用,但没有答案。我有一个数据集ds.Tables[0]。行[0]。字段(“日期”) 我需要把时间从这个领域中去掉。谁能告诉我怎么做???我尝试了以下方法,但不起作用 Convert.ToDateTime(ds.Tables[0].Rows[0].Field<DateTime>("Date")).ToString("MM/dd/yyyy"); Convert.ToDateTime(ds.Tables[0]。行[0]。字段(“日期”)).ToString(“MM/d
ds.Tables[0]。行[0]。字段(“日期”)
我需要把时间从这个领域中去掉。谁能告诉我怎么做???我尝试了以下方法,但不起作用
Convert.ToDateTime(ds.Tables[0].Rows[0].Field<DateTime>("Date")).ToString("MM/dd/yyyy");
Convert.ToDateTime(ds.Tables[0]。行[0]。字段(“日期”)).ToString(“MM/dd/yyyy”);
ADateTime
也有日期和时间部分。它只是有一个没有任何格式的值。因此,如果调用dt.ToString()
,就会将它与它的表示混淆
您可以实现与上面相同的操作,而无需将其转换为字符串
,应用仅显示日期的格式,最后将结果转换回日期时间
。你只需要使用它的
DateTime yourDateTime=ds.Tables[0]。行[0]。字段(“日期”);
DateTime onlyDate=您的DateTime.Date;
但是,如上所述,这不会删除小时、分钟和秒,它们现在只是零。因此,您必须使用其中一种:
string onlyDateDisplayed=yourDateTime.ToString(“d”)代码>
string onlyDateDisplayed=yourDateTime.ToString(“MM/dd/yyyy”)代码>
string onlyDateDisplayed=yourDateTime.ToSortDateString()代码>
使用DateTime的Date属性:ds.Tables[0]。行[0]=ds.Tables[0]。行[0]。字段(“日期”)。在c#中,没有
Date
数据类型,只有DateTime
。另外,字段
返回一个日期时间
,因此Convert.ToDateTime
什么也不做。“不工作”是什么意思?.Date
属性返回一个没有时间组件的日期时间。你不需要其他任何东西,特别是美国特定的字符串操作,它保证会破坏你在哪里使用这个日期?几乎所有控件都允许格式化。您应该为控件、MVC帮助程序或数据绑定表达式指定短日期格式,最好设置用于显示此内容的任何控件的format属性value@PanagiotisKanavos:OP没有说他正在使用任何具有格式属性的控件在web应用程序中使用仅限美国的格式是自找麻烦。你可以猜到接下来的两个问题是什么——为什么Javascript不起作用,为什么几个月的时间会颠倒过来customers@PanagiotisKanavos我不会因为我不知道的事责怪op。除此之外。以上三种方法都将使用当前的文化日期格式,而不是我们。即使第二个也将使用本地化的日期分隔符,并且只指定年、月和日期的顺序。原因是/是一个特殊的格式说明符我不理解你的评论。是的,这将不使用/作为日期分隔符,而是使用当前区域性日期分隔符(对于我来说,它将显示例如2017年11月24日而不是2017年11月24日)。
DateTime yourDateTime = ds.Tables[0].Rows[0].Field<DateTime>("Date");
DateTime onlyDate = yourDateTime.Date;