在Linq to Sql中,有没有办法在实体上定义属性,以指示它应该是唯一的(并且在生成数据库时还会在数据库中生成唯一约束)
注意:我希望在实体上生成唯一键约束,而不是另一个主键)
也就是说,根据我们的业务规则,我希望在Description属性上有一个属性,以指示它应该是唯一的。
[Table(Name = "ProductCategory")]
public class ProductCategory
{
// Generate a primary key
[Column(IsPrimaryKey = true, IsDbGenerated = true, AutoSync = AutoSync.OnInsert, Name="ProductCategoryId")]
public int ProductCategoryId { get; set; }
[Column(CanBeNull = false, ATTRIBUTE TO GENERATE UNIQUE CONSTRAINT FOR THIS PROPERTY/COLUMN]
public string Description { get; set; }
[Column(CanBeNull = false)]
public DateTime CreatedDate { get; set; }
[Column(CanBeNull = true)]
public DateTime? ModifiedDate { get; set; }
}发布于 2011-04-26 04:31:07
Linq-To-SQL (以及实体框架)不支持唯一键,因此没有注释来确保在数据库中为您生成唯一约束。您必须始终使用一些部署后脚本添加唯一的约束/索引。
https://stackoverflow.com/questions/5774261
复制相似问题