DateTime只是日期?

时间:2012-07-25 11:55:18

标签: c# wpf linq datetime

获取问题我只知道如何使用DateTime来显示我的结果:

    {

            string uri = "http://localhost:8002/Service/HireDate";
            XDocument xDoc = XDocument.Load(uri);
            var staff = xDoc.Descendants("HireDate")
                .Select(n => new
                {
                    StartDate = DateTime.Parse(n.Element("HireFromDate").Value), //this line
                    EndDate = DateTime.Parse(n.Element("HireToDate").Value), //this line
                    TotalDaysHired = n.Element("NumberOfDaysHired").Value,
                })
                .ToList();

            dataGrid9.ItemsSource = staff;

    }

然而,这在我的数据网格中输出如下:

15/07/2012 00:00:00
27/07/2012 00:00:00

有没有办法可以删除我想要约会的时间?

5 个答案:

答案 0 :(得分:5)

因此,您只想将Date的{​​{1}}部分显示为DateTime?您可以使用最易读的DateTime.ToShortDateString()

String

答案 1 :(得分:4)

要将没有时间的日期作为字符串,您可以使用提供给ToShortDateString的{​​{1}}或custom formatting options

ToString

var dateString = DateTime.Now.ToString("dd/MM/yyyy"); var shortDate = DateTime.Now.ToShortDateString(); ToShortDateString中的文化都采用自定义格式(尽管格式仍然是您自己的格式)。 ToString对于当前的文化可能更准确,因为它包含给定文化的正确格式。

答案 2 :(得分:0)

您可以使用DateTime.ParseExact函数。

例如:

        XDocument xDoc = XDocument.Load(uri);

        var staff = xDoc.Descendants("HireDate")
            .Select(n => new
            {
                StartDate = DateTime.ParseExact(n.Element("HireFromDate").Value, "dd/MM/yyyy", null), //this line
                EndDate = DateTime.ParseExact(n.Element("HireToDate").Value, "dd/MM/yyyy", null), //this line
                TotalDaysHired = n.Element("NumberOfDaysHired").Value,
            })
            .ToList();

        dataGrid9.ItemsSource = staff;

答案 3 :(得分:0)

当您输入日期时间时,可以使用ToString(字符串格式)方法设置正确的格式。

在这里你可以找到几种格式: http://msdn.microsoft.com/en-us/library/8kb3ddd4.aspx

 StartDate = DateTime.Parse(n.Element("HireFromDate").Value).ToString("dd/MM/yyyy"),
 EndDate = DateTime.Parse(n.Element("HireToDate").Value).ToString("dd/MM/yyyy")

答案 4 :(得分:0)

EndDate = DateTime.Parse(n.Element("HireToDate").Value).ToShortDateString()