Beispiel #1
0
        /// <summary>
        /// Get a DataExchange object for the passed in Class
        /// </summary>
        /// <param name="clazz">The class to get a DataExchange object for</param>
        /// <returns>The IDataExchange object</returns>
        public IDataExchange GetDataExchangeForClass(Type clazz)
        {
            IDataExchange dataExchange = null;

            if (clazz == null)
            {
                dataExchange = _complexDataExchange;
            }
            else if (typeof(IList).IsAssignableFrom(clazz))
            {
                dataExchange = _listDataExchange;
            }
            else if (typeof(IDictionary).IsAssignableFrom(clazz))
            {
                dataExchange = _dictionaryDataExchange;
            }
            else if (_typeHandlerFactory.GetTypeHandler(clazz) != null)
            {
                dataExchange = _primitiveDataExchange;
            }
            else
            {
                dataExchange = new DotNetObjectDataExchange(clazz, this);
            }

            return(dataExchange);
        }
        /// <summary>
        /// Get a DataExchange object for the passed in Class
        /// </summary>
        /// <param name="clazz">The class to get a DataExchange object for</param>
        /// <returns>The IDataExchange object</returns>
        public IDataExchange GetDataExchangeForClass(Type clazz)
        {
            IDataExchange dataExchange = null;

            if (clazz == null)
            {
                //为null取ComplexDataExchange对象类
                dataExchange = _complexDataExchange;
            }
            else if (typeof(IList).IsAssignableFrom(clazz))
            {
                //如果是IList类形式
                dataExchange = _listDataExchange;
            }
            else if (typeof(IDictionary).IsAssignableFrom(clazz))
            {
                //如果是IDictionary类型
                dataExchange = _dictionaryDataExchange;
            }
            else if (_typeHandlerFactory.GetTypeHandler(clazz) != null)
            {
                //去TypeHandlerFactory工厂中去取类对象
                dataExchange = _primitiveDataExchange;
            }
            else
            {
                //最终默认的数据交换类型
                dataExchange = new DotNetObjectDataExchange(clazz, this);
            }

            return(dataExchange);
        }
Beispiel #3
0
		/// <summary>
		/// Get a DataExchange object for the passed in Class
		/// </summary>
		/// <param name="clazz">The class to get a DataExchange object for</param>
		/// <returns>The IDataExchange object</returns>
		public IDataExchange GetDataExchangeForClass(Type clazz)
		{
			IDataExchange dataExchange = null;
			if (clazz == null) 
			{
                //为null取ComplexDataExchange对象类
				dataExchange = _complexDataExchange;
			}
			else if (typeof(IList).IsAssignableFrom(clazz)) 
			{
                //如果是IList类形式
				dataExchange = _listDataExchange;
			} 
			else if (typeof(IDictionary).IsAssignableFrom(clazz)) 
			{
                //如果是IDictionary类型
				dataExchange = _dictionaryDataExchange;
			} 
			else if (_typeHandlerFactory.GetTypeHandler(clazz) != null) 
			{
                //去TypeHandlerFactory工厂中去取类对象
				dataExchange = _primitiveDataExchange;
			} 
			else 
			{
                //最终默认的数据交换类型
				dataExchange = new DotNetObjectDataExchange(clazz, this);
			}
			
			return dataExchange;
		}
		/// <summary>
		/// Get a DataExchange object for the passed in Class
		/// </summary>
		/// <param name="clazz">The class to get a DataExchange object for</param>
		/// <returns>The IDataExchange object</returns>
		public IDataExchange GetDataExchangeForClass(Type clazz)
		{
			IDataExchange dataExchange = null;
			if (clazz == null) 
			{
				dataExchange = _complexDataExchange;
			}
			else if (typeof(IList).IsAssignableFrom(clazz)) 
			{
				dataExchange = _listDataExchange;
			} 
			else if (typeof(IDictionary).IsAssignableFrom(clazz)) 
			{
				dataExchange = _dictionaryDataExchange;
			} 
			else if (_typeHandlerFactory.GetTypeHandler(clazz) != null) 
			{
				dataExchange = _primitiveDataExchange;
			} 
			else 
			{
				dataExchange = new DotNetObjectDataExchange(clazz, this);
			}
			
			return dataExchange;
		}