c# - 字符串或二进制数据将被截断。该语句已终止 - 如何找到确切的插入语句?

标签 c# edmx

我知道之前在 SO 中很少有人问过类似的问题。但我的问题有点不同。 我有一个类似于此的代码块 -

     using (DBWebEntities db = new DBWebEntities())
            {
                if (StatusDict != null && StatusDict.Count > 0)
                {
                    foreach (KeyValuePair<string, job_status> kvp in JobStatusDict)
                    { db.AddToEmp_status(kvp.Value); }

                    db.SaveChanges();
                }
            }

如您所见,我在最后为所有插入查询同时运行了 db.saveChanges()。 我得到了一些实体的异常(exception)。 我如何从异常中找出它发生在哪个实体值上?

当我检查 innerexception 时,我只能找到堆栈跟踪而不是导致此异常的实体。

我正在使用 .NET 4。

最佳答案

您可以执行以下操作

catch (DbEntityValidationException ex)
            {

将鼠标悬停在 ex.询问 entityvalidationerrors、dbentityvalidationresult、Entry、Entity:查看您尝试进入数据库的值和字段名称。

查询 entityvalidationerrors、dbentityvalidationresult、Entry、Entity -- 以查看您需要的表

关于c# - 字符串或二进制数据将被截断。该语句已终止 - 如何找到确切的插入语句?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43838343/

相关文章:

c# - 如何在 winform c# 中禁用工具条下的行?

c# - 重载 true 和 false 运算符有什么作用?

c# - 企业库错误

c# - 来自 Connection 的希伯来语

c# - 使用 Azure 部署选项时出现依赖关系错误 (System.Net.Http) - 在 Visual Studio 中发布时有效

entity-framework - 使用 Entity Framework (.edmx 模型)和 Razor View 创建 MVC3 下拉列表&& 将数据库记录插入多个表

c# - 错误 3002 : Problem in mapping fragments | c# linq to entities

entity-framework - 如何将 EF6 关联添加到不是主键的候选键/唯一键?

c# - Entity Framework 4.1 Code First EDMX 问题

c# - 用于对存储过程进行分组的单独 EDMX