如何在实体框架6.1中使用duplicate key row with unique index属性处理[Index(IsUnique = true)] SqlException?

最佳答案

所以这是一个快速的技巧

try
{
    context.SaveChanges();
}
catch (DbUpdateException e)
{
    SqlException innerException = null;
    Exception tmp = e;
    while(innerException == null && tmp!=null)
    {
        if (tmp != null)
        {
            innerException = tmp.InnerException as SqlException;
            tmp = tmp.InnerException;
        }

    }
    if (innerException != null && innerException.Number == 2601)
    {
        // handle exception
    }
    else
    {
        throw;
    }
}


我希望有更好的解决方案...

关于entity-framework-6.1 - Entity Framework 6.1复制唯一索引异常处理,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/23673052/

10-10 03:23