如何教Automapper将X项目投射到IContainer <y>?

时间:2018-01-28 11:14:59

标签: automapper

出于与this question相同的原因,我想教会自动播放器投射到下面INC<>的{​​{1}}(在这种情况下不回来),类似于{{1} }}

vmodel

我试图在这里一般地做这件事:https://gist.github.com/flavourous/9a2668daa41cfedb8359b26eac319df2

我试图明确地做到这一点:https://gist.github.com/flavourous/d35bac140bb2883ebd82846a2b75ec7e

以下是我遇到的问题:

无法在SomeContext.GetIQueryable<model>().ProjectTo<vmodel>()

的非通用public interface INC<T> { T Value { get; set; } } public class NC<T> : INC<T> { public T Value { get; set; } } public class model { public int value { get; set; } } public class vmodel { public IC<String> Value { get; set; } } 内投放

在ForAllMaps中调用ProjectUsing时,参数类型为ProjectUsing

ForAllMaps工作正常,但Expression<Func<object,object>>上的任何演员都会给我Rewriting child expression..is not allowed because it would change the meaning of the expression

如何生成表达式映射到内部类型?

AM需要将ProjectUsing表达式映射到它从源ProjectUsing((object src)=>new NC<String>("test"))转换的object src的查询表达式,并且我想表达它通常会转换为IQueryable的表达式如果IQueryable不在那里就行。

X->Y看起来像一个选项,但我无法在INC<>内找到Mapper.Configuration.ExpressionBuilder.GetMapExpression<,>()

0 个答案:

没有答案