转换2011年9月13日上午12:00:00至2011年9月13日

时间:2011-09-13 15:29:47

标签: c# datetime date

我收到了这个:9/13/2011 12:00:00 AM

来自我的数据库,我希望显示如下:

2011年9月13日

这是我的代码:

 litDate.Text = Obj1.DueDate.ToString();

我的DueDate属于这个属性:

 public DateTime? DueDate { get; set; } 

6 个答案:

答案 0 :(得分:3)

试试这个:

litDate.Text = Obj1.Date.ToString("MM/dd/yyyy");

答案 1 :(得分:1)

仅当Obj1.Date的类型为DateTime时,才使用格式化程序" d"

if(Obj1.DueDate.HasValue)
{
    litDate.Text = Obj1.DueDate.Value.ToString("d");
}

答案 2 :(得分:1)

http://msdn.microsoft.com/en-us/library/az4se3k1.aspx

这为所有标准日期格式字符串提供了示例。

以下是您想要的示例:

// Display using current (en-us) culture's short date format
DateTime thisDate = new DateTime(2008, 3, 15);
Console.WriteLine(thisDate.ToString("d"));           
// Displays 3/15/2008

在您可能必须将日期国际化的任何情况下,不应使用明确格式化字符串的答案。这个答案使用了用户计算机的文化背景。

答案 3 :(得分:0)

http://www.csharp-examples.net/string-format-datetime/

编辑:既然您已将问题修改为完全不同的数据类型,则需要了解Nullables的工作原理。检查.HasValue,如果是,则.Value将成为DateTime,使所有其余的答案再次相关。

答案 4 :(得分:0)

litDate.Text = Obj1.Date.ToShortDateString();

答案 5 :(得分:0)

除了insta的回答,您还可以使用

litDate.Text = Obj1.Date.ToString("MM/dd/yyyy");