Duplicate key exception from Entity Framework?(实体框架中的重复键异常?)
问题描述
当我将具有给定用户名的现有用户插入我的数据库时,我试图捕捉抛出的异常.正如标题所说,我正在使用EF.当我尝试将用户插入 db 时引发的唯一异常是UpdateException" - 如何提取此异常以确定它是重复异常还是其他异常?
I'm trying to catch the exception thrown when I insert a already existing user with the given username into my database. As the title says then I'm using EF. The only exception that's thrown when I try to insert the user into to db is a "UpdateException" - How can I extract this exception to identify whether its a duplicate exception or something else?
推荐答案
catch (UpdateException ex)
{
    SqlException innerException = ex.InnerException as SqlException;
    if (innerException != null && innerException.Number == ??????)
    {
        // handle exception here..
    }
    else
    {
        throw;
    }
}
在 ?????? 处输入与唯一约束违规相对应的正确数字(我完全不知道).
Put the correct number at ?????? that corresponds to unique constraint violation (I don't know it from the top of my head).
这篇关于实体框架中的重复键异常?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:实体框架中的重复键异常?
				
        
 
            
        基础教程推荐
- JSON.NET 中基于属性的类型解析 2022-01-01
 - 是否可以在 asp classic 和 asp.net 之间共享会话状态 2022-01-01
 - 错误“此流不支持搜索操作"在 C# 中 2022-01-01
 - 全局 ASAX - 获取服务器名称 2022-01-01
 - 将事件 TextChanged 分配给表单中的所有文本框 2022-01-01
 - 如何动态获取文本框中datagridview列的总和 2022-01-01
 - 首先创建代码,多对多,关联表中的附加字段 2022-01-01
 - 经典 Asp 中的 ResolveUrl/Url.Content 等效项 2022-01-01
 - 在 VS2010 中的 Post Build 事件中将 bin 文件复制到物 2022-01-01
 - 从 VS 2017 .NET Core 项目的发布目录中排除文件 2022-01-01
 
    	
    	
    	
    	
    	
    	
    	
    	
						
						
						
						
						
				
				
				
				