对电子邮件字段强制执行唯一约束 - 使用asp.net dapper ORM(contrib)

时间:2016-06-04 21:42:29

标签: dapper

在dapper中插入(或更新)用户记录时,强制执行唯一约束(例如在电子邮件地址上)的最佳做法是什么?

为了防止竞争条件,我猜你只是尝试插入并让SQL Server在违反约束时返回错误 - 然后处理它?我找不到使用Dapper如何做到这一点的例子 - 或者对最佳实践的任何想法?

THX。

1 个答案:

答案 0 :(得分:3)

这根本不是一个小巧的打算回答的问题。 Dapper只运行SQL。但可以肯定的是,数据库中的唯一约束听起来很好 - C#6中的异常过滤器对于处理特定的SQL异常非常有用:

catch(SqlException ex) when (ex.Number == 2627 || ex.Number == 2601)
{ ... }