更新后SQLite.Net和SQLiteNetExtensions错误 - 关系和主键

时间:2018-03-12 02:14:09

标签: sqlite-net-extensions sqlite.net

我刚刚在我的项目中更新了所有SQLite块包。所有数据库操作都运行得很好。

现在,当我尝试这个时: items = db.GetAllWithChildren();

我收到此错误: Item.ItemEvents:OneToMany关系来源必须具有主键

因此代码中没有任何变化,主键是GUID作为字符串 所有实体都从这样的基类继承:

    public class BusinessEntityBase : IBusinessEntity
{
    public BusinessEntityBase()
    {
        Id = Guid.NewGuid().ToString();
    }

    [PrimaryKey]
    public string Id { get; set; }
}

这个错误是否意味着我不能/不应该从实现Id属性的基类继承?每个类应该实现它自己的Id属性吗?

我只是问,因为所有这些属性/关系都是通过反思来解决的,而且可能已经改变了一些东西以否定我如何构建我的实体层......

我不知道为什么我现在得到这个,而不是在更新所有SQLite插件之前......

THX SQLite Packages Installed

1 个答案:

答案 0 :(得分:0)

为需要知道的人找到了问题。

实体属性在SQLite和SQLite.Net.Attributes命名空间中不明确。

属性需要以SQLite名称空间为前缀,即:[SQLite.PrimaryKey]

希望有所帮助...