valueInjecter花费了太多时间

时间:2012-03-15 15:23:02

标签: .net valueinjecter

我是ValueInjecter的新用户,我从一个示例应用程序中使用了一周。现在这是我正在尝试使用的代码

    public virtual TInput MapToInput(TEntity entity)
    {
        var input = new TInput();
        input.InjectFrom(entity)
            .InjectFrom<NormalToNullables>(entity)
            .InjectFrom<EntitiesToInts>(entity);
        return input;
    }

它工作正常,但现在突然,input.InjectFrom似乎花了太多时间。我不太清楚我搞砸了什么。任何人都可以提前建议。

更新:         e.InjectFrom(输入)

这是花费太多时间的路线。我有一个状态类型,并且有超过10,000个员工记录与POCO实例关联...我正在使用Mapper希望仅映射Status但由于某种原因它解析整个图。有谁能说出如何避免它?我的输入只有状态字段,甚至不包含任何子列表,但仍然没有说服Mapper并解析整个POCO超过几分钟。

1 个答案:

答案 0 :(得分:0)

根据注入名称“IdsToTypeIds”我假设它进入数据库并提取数据,如Repo.Get<Type>(Id)

如果您不想遍历某些属性,可以在Match方法中指定此规则

并且注入也可以在构造函数中接收参数,以防您需要

无论如何,最快的方法是使用 SmartConventionInjection,这就是我建议您做的

只需将其复制到您的解决方案中,然后像使用ConventionInjection一样使用它