2017-02-01 9 views
0

これを最新のアップデートAutoMapperでどのように実現するかについては混乱がたくさんあるようです。私はAutoMapper 5.2.0を使用しています.Github Issuesで見つかった古いソリューションは動作していません。AutoMapperはNULL値を無視します

私の要件がnullかどうかをチェックするために、この拡張機能を使用してみてください(int型用)

答えて

1

を元の値がnullまたは空の場合(文字列の)マッピングを無視するか、0することです:

public static void MapFromIfNotNull<TSource, TDestination, TProperty>(
     this IMemberConfigurationExpression<TSource, TDestination, TProperty> map, 
     Expression<Func<TSource, object>> selector) 
     { 
      var function = selector.Compile(); 
      map.Condition(source => function(source) != null); 
      map.MapFrom(selector); 
     } 

次に使用

CreateMap<EmployeeDTO, Employee>() 
    .ForMember(dest => dest.MOBILE, opts => opts.MapFromIfNotNull(src => src.MobilePhone)) 
関連する問題