Example #1
0
        /// <summary>
        /// Returns a <see cref="IDcilSchemaProvider"/> object from given connection and data provider
        /// </summary>
        /// <param name="connection">The IDbConnection to use to retrieve the information</param>
        /// <param name="dataProviderName">The invariant name of the Data Provider</param>
        /// <returns><see cref="IDcilSchemaProvider"/></returns>
        public static IDcilSchemaProvider GetDcilSchemaProvider(IDbConnection connection, string dataProviderName)
        {
            IDcilSchemaProvider provider = null;

            switch (dataProviderName)
            {
            case "MySql.Data.MySqlClient":
                provider = new MySqlDcilSchemaProvider(connection);
                break;

            case "System.Data.SqlClient":
                provider = new SqlServer2005DcilSchemaProvider(connection);
                break;

            case "Oracle.DataAccess.Client":
            case "System.Data.OracleClient":
                provider = new OracleDcilSchemaProvider(connection);
                break;
            }
            if (provider == null)
            {
                throw new NotSupportedException("The specified invariant name is not supported.");
            }
            return(provider);
        }
Example #2
0
        /// <summary>
        /// Returns a <see cref="DcilSchema"/> object from given schema name
        /// </summary>
        /// <param name="schemaName">The name of the schema to load</param>
        /// <param name="connection">The IDbConnection to use to retrieve the information</param>
        /// <param name="dataProviderName">The invariant name of the Data Provider</param>
        /// <exception cref="NotSupportedException"/>
        /// <returns><see cref="DcilSchema"/></returns>
        public static DcilSchema FromSchemaName(string schemaName, IDbConnection connection, string dataProviderName)
        {
            if (connection == null)
            {
                throw new ArgumentNullException("connection");
            }
            if (String.IsNullOrEmpty(schemaName))
            {
                throw new ArgumentException("The name of the schema must not be empty", "schemaName");
            }
            IDcilSchemaProvider provider = GetDcilSchemaProvider(connection, dataProviderName);

            return(provider.LoadSchema(schemaName));
        }
Example #3
0
 /// <summary>
 /// Instantiates a new instance of <see cref="DcilSchema"/>
 /// </summary>
 /// <param name="dataProvider"></param>
 /// <param name="name"></param>
 public DcilSchema(IDcilSchemaProvider dataProvider, string name)
 {
     this._name         = name;
     this._dataProvider = dataProvider;
 }
Example #4
0
 /// <summary>
 /// Instantiates a new instance of <see cref="DcilTable"/>
 /// </summary>
 public DcilTable(IDcilSchemaProvider dataProvider, string schemaName, string tableName)
 {
     this._dataProvider = dataProvider;
     this._schemaName   = schemaName;
     this._tableName    = tableName;
 }
Example #5
0
		/// <summary>
		/// Instantiates a new instance of <see cref="DcilSchema"/>
		/// </summary>
		/// <param name="dataProvider"></param>
		/// <param name="name"></param>
		public DcilSchema(IDcilSchemaProvider dataProvider, string name)
		{
			this._name = name;
			this._dataProvider = dataProvider;
		}
Example #6
0
		/// <summary>
		/// Instantiates a new instance of <see cref="DcilTable"/>
		/// </summary>
		public DcilTable(IDcilSchemaProvider dataProvider, string schemaName, string tableName)
		{
			this._dataProvider = dataProvider;
			this._schemaName = schemaName;
			this._tableName = tableName;
		}