Я создаю приложение Xamarin.Forms для школьного проекта. Этот проект отображает список школьных терминов (6-месячные блоки времени) с датами начала и окончания. Список терминов отображается без проблем, но даты не отображаются так, как ожидалось: все даты - 01/01/0001. Таблица терминов:
Id TermName StartDate EndDate
---------- ---------- ---------- ----------
1 Term 1 2020-01-01 2020-06-30
2 Term 2 2020-07-01 2020-12-31
3 Term 3 2021-01-01 2021-06-30
4 Term 4 2021-07-01 2021-12-31
5 Term 5 2022-01-01 2022-06-30
6 Term 6 2022-07-01 2022-12-31
Поскольку SQLite не имеет определенного типа данных c DATETIME, я сохраняю StartDate и EndDate как тип данных TEXT, но файл модели term.cs использует тип данных DateTime. Размещение точки останова при загрузке списка терминов показывает: Данные точки останова .
Файл Terms.cs:
[Table("Terms")]
public class Terms
{
public int Term { get; set; }
public string TermName { get; set; }
public DateTime StartDate { get; set; }
public DateTime EndDate { get; set; }
}
Файл MainPage.xaml.cs:
protected override void OnAppearing()
{
base.OnAppearing();
using (SQLiteConnection conn = new SQLiteConnection(App.DBLocation))
{
conn.CreateTable<Terms>();
var terms = conn.Table<Terms>().ToList();
TermsListView.ItemsSource = terms;
TermsListView.SelectedItem = null;
}
}
Как мне получить StartDate и EndDate из моей таблицы, чтобы они правильно отображались в моем ListView?