1

使用文件上传 c# webform 将一些记录插入数据库。我得到的任何错误都会添加到列表中。插入所有记录后,我使用 linq 查看错误列表中是否有任何内容。我将它写入另一个列表,然后在这个列表中的 foreach 记录中,我在屏幕上的标签中写出错误。获取 linq 中的错误以列出未设置为对象实例的对象。

List<Cups> errors = FDloads.Where(c => c.DataErrors.Count > 0).ToList();

        if (errors.Count > 0)
        {
            Label1.Text = "Errors:";
            foreach (Cups err in errors)
            {
                Label1.Text += "<br/>" +  err.Lion + "," + err.Value;
            }
        }
        else
        {
            Label1.Text = "Success.";
        }

当我将列表 FDloads 中的错误计数写入新列表时,错误发生在 linq 行,如果它包含任何内容,请执行此操作,如果不执行此操作...

4

2 回答 2

0

它可能是那个cc.DataErrors为空。在取消引用之前尝试测试 null :

List<Cups> errors = FDloads
    .Where(c => c != null && c.DataErrors != null && c.DataErrors.Count > 0)
    .ToList();
于 2012-12-20T13:58:27.583 回答
0

请试试:

List<Cups> errors = FDloads.Where(c => c.DataErrors != null && c.DataErrors.Count > 0).ToList();
于 2012-12-20T13:58:31.957 回答