如何使用 EF 代码优先方法创建条件唯一约束?
How to create conditional unique constraint using EF code first approach?
我需要在允许空值的列上添加唯一约束,这可以使用以下查询来实现:
CREATE UNIQUE NONCLUSTERED INDEX idx_yourcolumn_notnull
ON YourTable(yourcolumn)
WHERE yourcolumn IS NOT NULL;
如何使用 Entity Framework 代码优先方法实现它?
您可以使用迁移来添加索引:
public partial class CreateDatabase : Migration
{
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.Sql("CREATE UNIQUE NONCLUSTERED INDEX ourcolumn_notnull
ON YourTable(yourcolumn)
WHERE yourcolumn IS NOT NULL;");
}
}
我需要在允许空值的列上添加唯一约束,这可以使用以下查询来实现:
CREATE UNIQUE NONCLUSTERED INDEX idx_yourcolumn_notnull
ON YourTable(yourcolumn)
WHERE yourcolumn IS NOT NULL;
如何使用 Entity Framework 代码优先方法实现它?
您可以使用迁移来添加索引:
public partial class CreateDatabase : Migration
{
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.Sql("CREATE UNIQUE NONCLUSTERED INDEX ourcolumn_notnull
ON YourTable(yourcolumn)
WHERE yourcolumn IS NOT NULL;");
}
}