0

我通读了我能找到的其他答案,但没有一个对我有帮助。我对 .NET、Entity、C# 等还是很陌生。所以我希望你能原谅我。我正在尝试创建一个“种子”文件,当我尝试单独为所有表播种时,当它是一个相关表时,我得到了错误。我不仅要查看子表,还要查看孙子表(希望这是有道理的)。例如,由于我发现了一个帖子,这就是我现在正在尝试的:

context.Projects.AddOrUpdate(i => i.ProjectID, 
     new Project
     {
        ProjectID = 1,
        Title = "Project 1",
        ProjectDoc = new List<ProjectDoc>
            {
                new ProjectDoc { 
                     ProjectDocID = 1, ProjectID = 1, Content = "Doc Content", DocTitle = "Chapter 1", 
                        Comment = new List<Comment> 
                        {
                             new Comment { ProjectDocID = 1, CommentID = 1, Text = "Comment text" }
                        }
                     }
                  }
             }
        );

我的问题是:

 Comment = **new** List<Comment> 

该“新”导致错误:无法隐式转换类型'System.Collections.Generic.List ....

我试图用谷歌搜索,但我不明白我发现的行话。帮助?

4

1 回答 1

1

虽然它与您的问题没有直接关系,但您不应该将AddOrUpdate其用于对象图。该方法的内部逻辑不检查相关对象,因此您可以解决您的问题并使其工作,但只有 Add 部分将起作用。当您添加、更新或删除时ProjectDocCommentSeed方法将无法识别更改。它只Project直接识别实例的变化。

于 2012-12-13T09:11:00.390 回答