Exemplo n.º 1
0
 public LambdaMemberMapper(ObjectMapper container, MemberMapOptions options, MappingMember targetMember,
                           Func <TSource, TMember> expression)
     : base(container, options, targetMember, null)
 {
     if (expression == null)
     {
         throw new ArgumentNullException("expression");
     }
     _expression = expression;
 }
Exemplo n.º 2
0
 public DefaultMemberMapper(ObjectMapper container, MemberMapOptions options, MappingMember targetMember,
                            MappingMember sourceMember,
                            Converter converter)
     : base(container, options, targetMember, converter)
 {
     if (sourceMember == null)
     {
         throw new ArgumentNullException("sourceMember");
     }
     _sourceMember = sourceMember;
 }
 public void Set <TSource, TMember>(MappingMember targetMember, Func <TSource, TMember> expression)
 {
     CheckReadOnly();
     if (targetMember == null)
     {
         throw new ArgumentNullException("targetMember");
     }
     if (expression == null)
     {
         throw new ArgumentNullException("expression");
     }
     Remove(targetMember);
     _mappers.Add(new LambdaMemberMapper <TSource, TMember>(_container, _options, targetMember, expression));
 }
 public void Set(MappingMember targetMember, MappingMember sourceMember, Converter converter)
 {
     CheckReadOnly();
     if (targetMember == null)
     {
         throw new ArgumentNullException("targetMember");
     }
     if (sourceMember == null)
     {
         throw new ArgumentNullException("sourceMember");
     }
     Remove(targetMember);
     _mappers.Add(new DefaultMemberMapper(_container, _options, targetMember, sourceMember, converter));
 }
        /// <summary>
        ///     Specify the member mapping strategy with the source and target members.
        /// </summary>
        /// <param name="sourceMember">The source mapping member.</param>
        /// <param name="targetMember">The target mapping member.</param>
        /// <returns>The member mapping strategy.</returns>
        public MemberMapping Set(MappingMember sourceMember, MappingMember targetMember)
        {
            MemberMapping mapping = _mappings.FirstOrDefault(m => m.TargetMember == targetMember);

            if (mapping == null)
            {
                _mappings.Add(mapping = new MemberMapping(sourceMember, targetMember));
            }
            else
            {
                mapping.SourceMember = sourceMember;
            }
            return(mapping);
        }
Exemplo n.º 6
0
        public ITypeMapper <TSource, TTarget> MapMember <TMember>(string targetName, Func <TSource, TMember> expression)
        {
            CheckReadOnly();
            Initialize();
            if (string.IsNullOrEmpty(targetName))
            {
                throw new ArgumentException("The name of the target member cannot be null or empty.", "targetName");
            }
            if (expression == null)
            {
                throw new ArgumentNullException("expression");
            }
            MappingMember targetMember = _targetMembers[targetName];

            if (targetMember != null)
            {
                _memberMappers.Set(targetMember, expression);
            }
            return(this);
        }
Exemplo n.º 7
0
 public ITypeMapper <TSource, TTarget> Ignore(IEnumerable <string> members)
 {
     CheckReadOnly();
     Initialize();
     if (members == null)
     {
         throw new ArgumentNullException("members");
     }
     foreach (string member in members)
     {
         if (string.IsNullOrEmpty(member))
         {
             throw new ArgumentException("The name of the target member to be ignored cannot be null or empty.");
         }
         MappingMember targetMember = _targetMembers[member];
         if (targetMember != null)
         {
             _memberMappers.Remove(targetMember);
         }
     }
     return(this);
 }
 public void Set(MappingMember targetMember, MappingMember sourceMember)
 {
     Set(targetMember, sourceMember, null);
 }
 public MemberMapper this[MappingMember targetMember]
 {
     get { return(Get(targetMember)); }
 }
Exemplo n.º 10
0
 internal MemberMapping(MappingMember sourceMember, MappingMember targetMember)
 {
     SourceMember = sourceMember;
     TargetMember = targetMember;
 }
 /// <summary>
 ///     Ignore the specified member during mapping.
 /// </summary>
 /// <param name="targetMember">The target member to ignore during mapping.</param>
 public void Ignore(MappingMember targetMember)
 {
     _mappings.RemoveAll(mapping => mapping.TargetMember == targetMember);
 }