繁体   English   中英

系统异常:'无法创建没有列的表,它具有公共属性吗?

[英]System Exception: 'Cannot create a table without columns, does it have public properties?

我正在创建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;
        }
    }
}

在模型中,将类的名称更改为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;
        }
    }
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM