Xamarin.forms应用程序在向SQLite数据库插入数据时崩溃
我试图获取用户在AddPage.Xaml.cs中输入的信息,并将其添加到SQLite数据库中。代码运行良好,直到我按下add按钮,然后崩溃,我真的不知道发生了什么,我也不知道我在做什么 下面是必要的代码及其对应的类 这在AddPage.xaml.cs中:Xamarin.forms应用程序在向SQLite数据库插入数据时崩溃,xamarin,xamarin.forms,Xamarin,Xamarin.forms,我试图获取用户在AddPage.Xaml.cs中输入的信息,并将其添加到SQLite数据库中。代码运行良好,直到我按下add按钮,然后崩溃,我真的不知道发生了什么,我也不知道我在做什么 下面是必要的代码及其对应的类 这在AddPage.xaml.cs中: private async Task AddButton_Clicked(object sender, EventArgs e) { App.characterDatabase.SaveCharacter(new Character()
private async Task AddButton_Clicked(object sender, EventArgs e)
{
App.characterDatabase.SaveCharacter(new Character()
{
Name = NameTxt.Text,
Species = SpeciesTxt.Text,
ImageUrl = ImageUrlTxt.Text
});
}
CharacterDatabaseController.cs
public class CharacterDatabaseController
{
static object locker = new object();
SQLiteConnection database;
public CharacterDatabaseController()
{
database = DependencyService.Get<IDatabaseConnection>().DbConnection();
database.CreateTable<Character>();
}
public Character GetCharacter()
{
lock (locker)
{
if (database.Table<Character>().Count() == 0)
{
return null;
}
else
{
return database.Table<Character>().First();
}
}
}
public int SaveCharacter(Character character)
{
lock (locker)
{
if (character.Id != 0)
{
database.Update(character);
return character.Id;
}
else
{
return database.Insert(character);
}
}
}
public int DeleteCharacter(int id)
{
lock (locker)
{
return database.Delete<Character>(id);
}
}
}
使用调试器,或添加一些try/catch块,以识别导致崩溃的特定行以及异常是什么您得到的错误是什么?您需要提供更多信息,以便我们提供帮助。
public static CharacterDatabaseController characterDatabase
{
get
{
if (characterDatabase == null)
{
CharacterDatabase = new CharacterDatabaseController();
}
return CharacterDatabase;
}
}