Example #1
0
 /// <summary>
 /// 创建DatabaseSchemaContext实例。
 /// </summary>
 /// <param name="dataContext">DataContext对象</param>
 public DatabaseSchemaContext(Symbol.Data.IDataContext dataContext)
 {
     _dataContext  = dataContext;
     _databaseName = dataContext.Connection.Database;
     _log          = LogBase.Empty;
     _vars         = new Symbol.Collections.Generic.NameValueCollection <object>();
     _vars.Add("log", _log);
     _vars.Add("dataContext", _dataContext);
     _vars.Add("databaseName", _databaseName);
 }
Example #2
0
        static PostgreSQLProvider()
        {
            _types = new Collections.Generic.NameValueCollection <System.Type>();
#if netcore || net45
            _types.Add("Npgsql.NpgsqlConnection", typeof(Npgsql.NpgsqlConnection));
            _types.Add("Npgsql.NpgsqlConnectionStringBuilder", typeof(Npgsql.NpgsqlConnectionStringBuilder));
            _types.Add("NpgsqlTypes.NpgsqlDbType", typeof(NpgsqlTypes.NpgsqlDbType));
#else
            GetType("Npgsql.NpgsqlConnection");
            GetType("Npgsql.NpgsqlConnectionStringBuilder");
            GetType("NpgsqlTypes.NpgsqlDbType");
#endif
        }
Example #3
0
        static MySqlProvider()
        {
            _types = new Collections.Generic.NameValueCollection <System.Type>();
#if netcore || net452
            _types.Add("MySql.Data.MySqlClient.MySqlConnection", typeof(MySql.Data.MySqlClient.MySqlConnection));
            _types.Add("MySql.Data.MySqlClient.MySqlConnectionStringBuilder", typeof(MySql.Data.MySqlClient.MySqlConnectionStringBuilder));
            _types.Add("MySql.Data.MySqlClient.MySqlDbType", typeof(MySql.Data.MySqlClient.MySqlDbType));
#else
            GetType("MySql.Data.MySqlClient.MySqlConnection");
            GetType("MySql.Data.MySqlClient.MySqlConnectionStringBuilder");
            GetType("MySql.Data.MySqlClient.MySqlDbType");
#endif
        }
Example #4
0
        /// <summary>
        /// 获取类型
        /// </summary>
        /// <param name="name">类型名称</param>
        /// <returns></returns>
        public static FastWrapper GetType(string name)
        {
            if (string.IsNullOrEmpty(name))
            {
                return(null);
            }
            FastWrapper wrapper;

            if (_types.TryGetValue(name, out wrapper))
            {
                return(wrapper);
            }
            if (_types.TryGetValue(name, out wrapper))
            {
                return(wrapper);
            }
            try {
                System.Type type = _assemblies[0].GetType(name);
                if (type == null)
                {
                    return(null);
                }
                wrapper = new FastWrapper(type, false);
                _types.Add(name, wrapper);
                return(wrapper);
            } catch {
                return(null);
            }
        }