无法首先执行代码

时间:2014-08-14 11:35:42

标签: ef-code-first

public void Register(User user)
    {
        context.Users.Add(user);
        context.SaveChanges();
    }   

无法转换类型&System; System.Collections.Generic.HashSet`1 [Forum.Model.User]'输入' Forum.Model.User'。

错误是我将对象添加到contextt的地方

1 个答案:

答案 0 :(得分:0)

如果您使用代码生成(EF5 ou EF6),它可以在您的实体类User中使用HashSet ...

尝试在解决方案中找到.tt文件并更改该行

this.<#=code.Escape(navigationProperty)#> = new HashSet<<#=typeMapper.GetTypeName(navigationProperty.ToEndMember.GetEntityType())#>>();

到这个

this.<#=code.Escape(navigationProperty)#> = new List<<#=typeMapper.GetTypeName(navigationProperty.ToEndMember.GetEntityType())#>>();

之后,您的实体类将被重建并正常工作。