コード例 #1
0
ファイル: ObjectConverter.cs プロジェクト: yangwen27/moonlit
        public object MapObject(object srcValue, object dstValue)
        {
            if (dstValue == null)
            {
                return null;
            }

            var reader = this._readerFactory.CreateReader(srcValue) ?? new DefaultObjectReader(srcValue);

            var convertArgs = new ConvertArgs(reader, this, dstValue.GetType()) { ConvertedObject = dstValue };
            ConvertCore(convertArgs);
            return dstValue;
        }
コード例 #2
0
ファイル: ObjectConverter.cs プロジェクト: yangwen27/moonlit
 private void ConvertCore(ConvertArgs convertArgs)
 {
     foreach (var currentObjectConverter in _currentObjectConverters)
     {
         if (currentObjectConverter.Value.TryConvert(convertArgs))
         {
             return;
         }
     }
     foreach (var objectConverter in _defaultObjectConverters)
     {
         if (objectConverter.Value.TryConvert(convertArgs))
         {
             return;
         }
     }
 }
コード例 #3
0
ファイル: ObjectConverter.cs プロジェクト: yangwen27/moonlit
        public object MapObject(object srcValue, Type dstType)
        {
            var reader = this._readerFactory.CreateReader(srcValue) ?? new DefaultObjectReader(srcValue);

            var convertArgs = new ConvertArgs(reader, this, dstType);
            ConvertCore(convertArgs);
            return convertArgs.ConvertedObject;
        }