我的 ViewModel 中有以下内容
public IEnumerable<win8Chores.Model.databaseTables.Person> selectAllPerson()
{
using (var db = new SQLiteConnection(dbPath))
{
return db.Query<win8Chores.Model.databaseTables.Person>("select personId,personName,personEmail,personDOB from Person");
//return db.Table<Person>();
}
}
我有一个模型:
public class Person
{
[PrimaryKey, AutoIncrement]
public int personId { get; set; }
[MaxLength(25)]
public string personName { get; set; }
[MaxLength(50)]
public string personEmail { get; set; }
[MaxLength(13)]
public string personPhone { get; set; }
public DateTime personDOB { get; set; }
public Boolean isPersonActive { get; set; }
}
在我看来,我有以下几点:
DataContext = VM;
test.ItemsSource = VM.selectAllPerson();
现在最初我在我的列表视图(测试)中得到了非常通用的文本:
win8.Model.databaseTables+Person
但是当我将以下内容添加到我的模型中时:
public override string ToString()
{
return string.Format("{0} - {1} : {2} -- {3}", personName, personEmail, personPhone, personDOB);
}
然后我从表中得到了实际值。
我的问题是为什么我必须使用override
该ToString
方法?