更新到EF 6和微风1.4.6后微风慢得多

时间:2013-12-04 11:07:41

标签: entity-framework entity-framework-5 breeze

我注意到微风1.4.6 + EF 6比旧版的微风+ EF 5慢得多 代码完全相同,这里是我的请求的屏幕截图(首先是旧版本):

enter image description here

enter image description here

我注意到文字不可读,为了阅读它,右键点击图片,在新标签中显示图片。

为什么会这样? (我已经多次清除缓存,在不同的浏览器中测试过等。)

修改

今天我已经抽出时间来解决这个问题了,但我无法深入了解它,我已经创建了包含6个实体的Test项目,以下是两个最复杂实体的示例:

public class Exercise
    {
        public int ExerciseId { get; set; }

        public string Name { get; set; }

        public  ICollection<ExerciseLevel> ExerciseLevels { get; set; }

    }

public class ExerciseLevel
    {
        public int LevelId { get; set; }
        public int Number { get; set; }
        public int ExerciseId { get; set; }
        public Exercise Exercise { get; set; }

    }

它们配置了流畅的API,例如:

modelBuilder.Entity<Exercise>()
            .HasMany(e => e.ExerciseLevels)
            .WithRequired(e => e.Exercise)
            .HasForeignKey(e => e.ExerciseId);

我只有一个微风控制器:

 [BreezeController]
    public class ServiceController : ApiController
    {
        private readonly EFContextProvider<DatabaseTest> _contextProvider = new EFContextProvider<DatabaseTest>();

        [HttpGet]
        public string Metadata()
        {
            return _contextProvider.Metadata();
        }

        // GET api/<controller>
        [HttpGet]
        public IQueryable<MuscleGroup> MuscleGroups()
        {
            return _contextProvider.Context.MuscleGroups;
        }

        [HttpGet]
        public IQueryable<Muscle> Muscles()
        {
            return _contextProvider.Context.Muscles;
        }

        [HttpPost]
        public SaveResult SaveChanges(JObject saveBundle)
        {
            return _contextProvider.SaveChanges(saveBundle);
        }
    }

当我输入URL:breeze / Service / Metadata时,完成需要大约3000毫秒。图片如下:

enter image description here

我不知道为什么会这样:(

0 个答案:

没有答案