我是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超过几分钟。
答案 0 :(得分:0)
根据注入名称“IdsToTypeIds”我假设它进入数据库并提取数据,如Repo.Get<Type>(Id)
如果您不想遍历某些属性,可以在Match方法中指定此规则
并且注入也可以在构造函数中接收参数,以防您需要
无论如何,最快的方法是使用 SmartConventionInjection,这就是我建议您做的
只需将其复制到您的解决方案中,然后像使用ConventionInjection一样使用它