繁体   English   中英

ef6中的首次运行问题

[英]First time running issue in ef6

我有45个实体的应用程序。 其中之一具有递归关系。

这是我的dbContext类:

public class Context: DbContext
{
    public Context()
    {
        Configuration.LazyLoadingEnabled = false;
        Configuration.ProxyCreationEnabled = false;
        base.Configuration.ValidateOnSaveEnabled = false;
    }
    protected override void OnModelCreating(DbModelBuilder modelBuilder)
    {
        modelBuilder.Entity<Level>().HasMany(l => l.Children).WithOptional(l => l.Parent).HasForeignKey(l => l.ParentId);
        Database.SetInitializer<Context>(null);
        modelBuilder.Conventions.Remove<PluralizingTableNameConvention>();
    }
}

这是我的Level类,具有递归关系:

public class Level
{
    public int LevelId { get; set; }
    public string Name { get; set; }
    public int? ParentId { get; set; }
    public Level Parent { get; set; }
    public List<Level> Children { get; set; }
}

但是我有一个大问题,我的第一次跑步需要很长时间。 在localhost中,响应时间为10秒,在服务器中,响应时间为20至30秒。

有什么问题?

我认为您需要为上下文的初始化建立视图。

尝试阅读http://www.fusonic.net/zh/blog/2014/07/09/three-steps-for-fast-entityframework-6.1-first-query-performance/以了解如何改进首次发布,例如,生成视图。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM