我正在尝试使用我的azure表中的所有内容填充listview,但无法弄清楚如何。
我的应用程序因此错误而崩溃:
System.NullReferenceException:对象引用未设置为对象的实例。
我正在尝试做的是,显示表格中的所有内容并将其删除,类似于已注释掉的内容,即硬编码部分。
这是我正在尝试添加的页面页面。但我认为我的主要问题是从数据库中获取列表以便使用。
public class SearchEvent : Activity
{
public static MobileServiceClient Client =
new MobileServiceClient("https://app.azurewebsites.net");
private List<EventsDB> eItems;
private ListView eListView;
protected async override void OnCreate(Bundle savedInstanceState)
{
base.OnCreate(savedInstanceState);
ISharedPreferences login = Application.Context.GetSharedPreferences("Login", FileCreationMode.Private);
SetContentView(Resource.Layout.Search_Event);
eListView = FindViewById<ListView>(Resource.Id.myListView);
DateTime today = DateTime.Today;
List<EventsDB> eItems = await Client.GetTable<EventsDB>().ToListAsync();
//eItems = new List<EventsDB>();
//eItems.Add(new EventsDB() { EventName = allEvents , Location = "Laois", Date = "28/03/18", Category = "Computing", Description = "This is a test" });
//eItems.Add(new EventsDB() { EventName = "Another", Location = "Carlow", Date = "29/03/18", Category = "Music", Description = "This is another test" });
ListViewAdapter adapter = new ListViewAdapter(this, this.eItems);
eListView.Adapter = adapter;
}
}
提前感谢您的帮助!
答案 0 :(得分:0)
解决了这个问题,所以如果有其他人遇到同样的问题,我所做的就改变了这个:
<List<EventsDB> eItems = await Client.GetTable<EventsDB>().ToListAsysnc();
要:
eItems = await Client.GetTable<EventsDB>().ToListAsysnc();
它运作良好。