Android Xamarin 从 SQLite 数据库中检索数据 returns 默认对象
Android Xamarin retrieving data from SQLite database returns default objects
我有 list
个对象存储在 SQLite
数据库中,当我想将 table 中的对象加载到我的列表中时,我得到了确切的数量我存储的对象,但它都是默认对象。
我尝试了什么:
string strsql = string.Format("SELECT * FROM MyObject");
List<MyObject> list = db.Query<MyObject>(strsql);
List<MyObject> list = db.Table<MyObject>().ToList();
List<MyObject> list= new List<MyObject>();
for (int i = 0; i < amount; i++)
{
try
{
list.Add(db.Get<MyObject>(i));
}
catch (Exception) { }
}
结果都是一样的。我不知道为什么,但似乎我得到的对象之前通过了默认构造函数,因此它们的属性在数据库中丢失了。
终于解决了,我的解决方案给有需要的人。我的 class 中有很多成员,但只有一个(主键)是 public,我让所有其他成员都成为 public 并且有效。
我有 list
个对象存储在 SQLite
数据库中,当我想将 table 中的对象加载到我的列表中时,我得到了确切的数量我存储的对象,但它都是默认对象。
我尝试了什么:
string strsql = string.Format("SELECT * FROM MyObject");
List<MyObject> list = db.Query<MyObject>(strsql);
List<MyObject> list = db.Table<MyObject>().ToList();
List<MyObject> list= new List<MyObject>();
for (int i = 0; i < amount; i++)
{
try
{
list.Add(db.Get<MyObject>(i));
}
catch (Exception) { }
}
结果都是一样的。我不知道为什么,但似乎我得到的对象之前通过了默认构造函数,因此它们的属性在数据库中丢失了。
终于解决了,我的解决方案给有需要的人。我的 class 中有很多成员,但只有一个(主键)是 public,我让所有其他成员都成为 public 并且有效。