1

我是 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(input)

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

4

1 回答 1

0

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

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

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

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

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

于 2012-03-16T10:17:01.923 回答