2012-07-25 2 views
0

Получение ABIT проблемы я только знаю, как использовать 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; 

    } 

Однако этот вывод, как это в моем DataGrid:

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

Есть ли способ, чтобы удалить время, когда я просто хочу дату?

+1

Это больше походит на беспокойстве UI, то есть работы в данной сетке. Итак: какая сетка данных это? WinForms? WebForms? МОФ? сл? XNA? ср? MVC? –

+0

В этом случае: [Необходимо форматировать даты в динамически созданных WPF DataGrid] (http://stackoverflow.com/questions/848702/need-to-format-dates-in-dynamically-built-wpf-datagrid) –

ответ

5

Таким образом, вы хотите показать только Date часть DateTime как String? Вы можете использовать DateTime.ToShortDateString(), который является самым читаемым:

StartDate = DateTime.Parse(n.Element("HireFromDate").Value).ToShortDateString() 
+0

или использовать 'StartDate = DateTime.Parse (n.Element (" HireFromDate "). Значение) .ToString (" dd-MM-yyyy ");' – harry180

3

Чтобы получить дату без времени в виде строки, вы можете использовать ToShortDateString или custom formatting options предоставляется ToString:

var dateString = DateTime.Now.ToString("dd/MM/yyyy"); 
var shortDate = DateTime.Now.ToShortDateString(); 

Культура рассматривается как в ToShortDateString и ToString с произвольным форматом (хотя формат еще ваши своя). ToShortDateString может быть более точным с текущей культурой, поскольку он содержит правильный формат для данной культуры.

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; 
0

когда вы кладете времени и даты, вы можете использовать метод ToString (формат строки), чтобы установить нужный формат.

здесь вы можете найти несколько форматов smaple: 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") 
0
EndDate = DateTime.Parse(n.Element("HireToDate").Value).ToShortDateString() 
Смежные вопросы