如何使用LINQ to SQL强制执行唯一约束

1 sql linq unique-constraint linq-to-sql

我想用LINQ to SQL对两列强制执行唯一约束.我在SQL表上配置了约束,但有没有办法将它与LINQ to SQL一起使用?

唯一约束应用于两列,两列都是外键.

谢谢

编辑:我可以捕获异常,即如果抛出一个非常特殊的异常.另一种方法是在运行任何更新/插入之前检查表的状态.对于一个非常简单的任务来说,似乎都需要做太多的工作.

Ran*_*der 5

在我看来,L2S不应该对此进行实际执行.您的数据库应该通过唯一约束来完成.然后,当您尝试通过L2S进行插入或更新时,只需捕获调用SubmitChanges()时返回的异常(如果有).

  • @vikp - 你并没有真正在中间层强制执行它.数据库正在执行它.您只是捕获在中间层更新/插入期间可能发生的任何错误.这很好. (3认同)