This question already has answers here:
combination of two field must be unique in Entity Framework code first approach. how it would?
(2个答案)
5年前关闭。
我想检查唯一的密钥约束,但是我不知道使用哪种方法。
哪种方法更好?
我使用C#,EF,SQL Server
第一种方法:
第二种方法:
第三种方法:
用T-SQL检查
开始
选择“真”
结束
其他
开始
选择“假”
结束
(2个答案)
5年前关闭。
我想检查唯一的密钥约束,但是我不知道使用哪种方法。
哪种方法更好?
我使用C#,EF,SQL Server
第一种方法:
bool contactExists = _db.Contacts.Any(contact => contact.ContactName.Equals(ContactName));
if (contactExists)
{
return -1;
}
else
{
_db.Contacts.Add(myContact);
_db.SaveChanges();
return myContact.ContactID;
}
第二种方法:
Handle in exception.
第三种方法:
用T-SQL检查
If Exists (
Select Name
From dbo.ContentPage
Where Name = RTRIM(LTRIM(N'page 1'))
)
开始
选择“真”
结束
其他
开始
选择“假”
结束
最佳答案
我很少检查代码中的唯一键约束。实际上,如果多个客户端可以同时更新数据,那实际上是在浪费时间。假设您检查以确保可以添加员工“ Saeid Mirzaei”,并且发现密钥未被使用。因此,您添加了它。如果其他人同时输入了dup key问题,您仍然会遇到异常。您可以在TSQL或C#中处理异常,但是您几乎需要对健壮的代码使用异常处理。
关于c# - 如何检查唯一键约束,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24773988/
10-17 02:05