c# - 系统异常:'无法创建没有列的表,它是否具有公共属性?
问题描述
我正在创建一个 Xamarin 表单,我必须在其中创建一个表来保存详细信息(用户和密码)。
当我在模拟器上运行它时,我最终得到了这个错误:
系统异常:无法创建没有列的表
在视图中:
private async void _saveButton_Clicked(object Sender, EventArgs e)
{
var db = new SQLiteConnection(_dbPath);
db.CreateTable<User>();
var maxPk = db.Table<User>().OrderByDescending(c => c.Id).FirstOrDefault();
User user = new User()
{
Id = (maxPk == null ? 1 : Convert.ToInt32(maxPk.Id) +1),
Email = _emailEntry.Text,
Password = _passwordEntry.Text
};
db.Insert(user);
await DisplayAlert(null, "Saved", "Ok");
await Navigation.PopAsync();
}
在模型中:
using SQLite;
namespace LoginPage.Models
{
public class LoginPage
{
[PrimaryKey]
public int Id { get; set; }
public string Email { get; set; }
public string Password { get; set; }
public override string ToString()
{
return this.Email + "," + this.Password;
}
}
}
解决方案
在 Models 中,将您的类的名称更改为 User。那就是您要创建的表模型。
使用 SQLite;
namespace LoginPage.Models
{
public class User
{
[PrimaryKey]
public int Id { get; set; }
public string Email { get; set; }
public string Password { get; set; }
public override string ToString()
{
return this.Email + "," + this.Password;
}
}
}
推荐阅读
- assembly - ARM v8 中的 LDUR 和 STUR
- json - Gson JSON 输出在转换后的字段名称中包含空格
- c - 将项目添加到数据结构 (C)
- angular - PrimeNG 在单个选择中从表中删除行选择
- visual-studio - CSV 上的 SSIS SSMS 逗号问题
- python - Python Pandas 将列表中的多个 SAS 文件读取到单独的数据帧中
- javascript - 显示带有动态数据的高图
- python - 在 django 中从用户输入写入 csv 文件:每个字符出现在新行上
- macos - GCC 未检测到 MacOS Mojave 中的库路径
- ios - Swift:线程 1:EXC_BAD_ACCESS 即使有警卫