C# 实体框架6.0.2极慢

C# 实体框架6.0.2极慢,c#,sql,entity-framework,C#,Sql,Entity Framework,我首先尝试了NuGet的Entity Framework 6.0.2代码。db中有一行,条件就这么简单(EF生成的sql): 我这样称呼EF: IEnumerable<Dictionary> dics = context.Dictionaries.Where(s => s.UserId == userId); 由于EF 6.0.2中的错误,性能缓慢 请参见IsDictionaryBCLDictionary或您自己的自定义数据类型?Dictionary是我的代码第一个实体类。观

我首先尝试了NuGet的Entity Framework 6.0.2代码。db中有一行,条件就这么简单(EF生成的sql):

我这样称呼EF:

IEnumerable<Dictionary> dics = context.Dictionaries.Where(s => s.UserId == userId);

由于EF 6.0.2中的错误,性能缓慢


请参见

Is
Dictionary
BCL
Dictionary
或您自己的自定义数据类型?Dictionary是我的代码第一个实体类。观看编辑。THNKX当你说EF 6.0.2很慢时,你是说它现在很慢,在旧版本中也很快,还是说6.0.2是你尝试的第一个版本,而且这个版本很慢?另外,如果你反复调用它,查询是否会保持慢?在您第一次使用上下文时,EF会做很多事情,虽然15秒远比应该花费的时间长,但检查第二次查询需要多长时间仍然很有用。我使用的是5.0.1版,没有问题,但在其他一些项目上。现在我开始新项目,所以我使用了最新版本。
IEnumerable<Dictionary> dics = context.Dictionaries.Where(s => s.UserId == userId);
public class Dictionary
{
    [Key]
    [ScaffoldColumn(false)]
    public long Id { get; set; }

    [Display(Name = "Name")]
    [Required]
    [MaxLength(25)]
    public string Name { get; set; }

    public int Practised { get; set; }

    public long SourceLangId { get; set; }
    public virtual Lang SourceLang { get; set; }

    public long TargetLangId { get; set; }
    public virtual Lang TargetLang { get; set; }

    public long UserId { get; set; }
    public virtual User User { get; set; }
}