public virtual void Dispose()
        {
            if (_generator != null && _generator is IDisposable)
            {
                ((IDisposable)_generator).Dispose();
            }

            _generator = null;
        }
        /// <summary>
        /// 创建一个新的LinqDLR2SQL对象
        /// </summary>
        /// <typeparam name="T"></typeparam>
        /// <param name="item"></param>
        /// <param name="table"></param>
        /// <param name="aliasName"></param>
        /// <param name="generator"></param>
        /// <returns></returns>
        public static T New <T>(TSource item, string table = "", string aliasName = "", LinqDLR2SQLGenerator generator = null) where T : LinqDLR2Sql <TSource>
        {
            var rtn = (T)Activator.CreateInstance(typeof(T), true);//new LinqTable<TSource>();

            rtn.Item         = item;
            rtn.Table        = table;
            rtn.AliasName    = string.IsNullOrEmpty(aliasName) ? rtn.Table : aliasName;
            rtn.SQLGenerator = generator == null ? new GeneralLinqDLR2SQLGenerator(null) : generator;
            return(rtn);
        }