C#SQLite-net定义多列唯一

时间:2013-09-11 22:37:10

标签: c# xamarin sqlite-net

我见过对SQLite-net中支持多列唯一约束的更改的引用。我知道它可以直接用sqlite完成,但我更喜欢用sqlite-net方法做​​事。 什么是多列唯一的语法。单个列上方的[唯一]是唯一的。

1 个答案:

答案 0 :(得分:37)

通过查看项目中包含的实际单元测试,我找到了答案。它基于在index属性上使用命名参数。例如:

    [Indexed(Name = "ListingID", Order = 2, Unique = true)]
    public string   ListingNumber { get; set; }
    [Indexed(Name = "ListingID", Order = 1, Unique = true)]
    public string   ChannelCode { get; set; }

将在两个必须唯一的字段上创建一个名为ListingID的索引。它不需要unique属性,将其作为参数删除。您必须使用命名参数才能使其工作。索引中的所有字段也必须具有相同的唯一值。