本文整理汇总了C#中System.Data.Common.DbProviderFactory类的典型用法代码示例。如果您正苦于以下问题:C# DbProviderFactory类的具体用法?C# DbProviderFactory怎么用?C# DbProviderFactory使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
DbProviderFactory类属于System.Data.Common命名空间,在下文中一共展示了DbProviderFactory类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: DbConfiguration
private DbConfiguration(string providerName, string connectionString, DbProviderFactory dbProviderFactory)
{
this.providerName = providerName;
this.connectionString = connectionString;
this.dbProviderFactory = dbProviderFactory;
this.dbDriver = currentDbDrivers[providerName];
}
示例2: ReadSchema
// SchemaReader.ReadSchema
public override Tables ReadSchema(DbConnection connection, DbProviderFactory factory)
{
var result=new Tables();
this._connection=connection;
this._factory=factory;
var cmd=this._factory.CreateCommand();
cmd.Connection=connection;
cmd.CommandText=TABLE_SQL;
//cmd.GetType().GetProperty("BindByName").SetValue(cmd, true, null);
//pull the tables in a reader
using(cmd)
{
using (var rdr=cmd.ExecuteReader())
{
while(rdr.Read())
{
Table tbl=new Table();
tbl.Name=rdr["name"].ToString();
tbl.Schema = "";
tbl.IsView=String.Compare(rdr["type"].ToString(), "view", true)==0;
tbl.CleanName=CleanUp(tbl.Name);
tbl.ClassName=Inflector.MakeSingular(tbl.CleanName);
tbl.SQL = rdr["sql"].ToString();
result.Add(tbl);
}
}
}
foreach (var tbl in result)
{
tbl.Columns=this.LoadColumns(tbl);
tbl.Indexes = this.LoadIndices(tbl.Name);
tbl.ForeignKeys = this.LoadForeignKeys(tbl.Name);
}
return result;
}
示例3: CheckMembershipSchemaVersion
public static bool CheckMembershipSchemaVersion (DbProviderFactory factory, string connStr, string feature, string compatibleVersion)
{
using (DbConnection connection = CreateConnection (factory, connStr)) {
DbCommand command = factory.CreateCommand ();
command.Connection = connection;
command.CommandText = @"aspnet_CheckSchemaVersion";
command.CommandType = CommandType.StoredProcedure;
AddParameter (factory, command, "@Feature", ParameterDirection.Input, feature);
AddParameter (factory, command, "@CompatibleSchemaVersion", ParameterDirection.Input, compatibleVersion);
DbParameter returnValue = AddParameter (factory, command, "@ReturnVal", ParameterDirection.ReturnValue, null);
try {
command.ExecuteNonQuery ();
}
catch (Exception) {
throw new ProviderException ("ASP.NET Membership schema not installed.");
}
if ((int) (returnValue.Value ?? -1) == 0)
return true;
return false;
}
}
示例4: LoadRows
private static async Task<IEnumerable<Fortune>> LoadRows(string connectionString, DbProviderFactory dbProviderFactory)
{
var result = new List<Fortune>();
using (var db = dbProviderFactory.CreateConnection())
using (var cmd = db.CreateCommand())
{
cmd.CommandText = "SELECT [Id], [Message] FROM [Fortune]";
db.ConnectionString = connectionString;
await db.OpenAsync();
using (var rdr = await cmd.ExecuteReaderAsync(CommandBehavior.CloseConnection))
{
while (await rdr.ReadAsync())
{
result.Add(new Fortune
{
Id = rdr.GetInt32(0),
Message = rdr.GetString(1)
});
}
}
}
result.Add(new Fortune { Message = "Additional fortune added at request time." });
result.Sort();
return result;
}
示例5: FindByUserDatabase
private FindByUserDatabase(IRepositoryContext context, DbProviderFactory providerFactory, string connectionString)
{
Context = context;
ProviderFactory = providerFactory;
ConnectionString = connectionString;
Connection = GetConnection();
}
示例6: CreateCommandDefinition
internal static EntityCommandDefinition CreateCommandDefinition(DbProviderFactory storeProviderFactory, DbCommandTree commandTree)
{
DebugCheck.NotNull(storeProviderFactory);
DebugCheck.NotNull(commandTree);
return new EntityCommandDefinition(storeProviderFactory, commandTree);
}
示例7: CachedFactory
public CachedFactory(DbProviderFactory factory, string factoryName, string factoryDescription, string factoryAssemblyQualifiedNameKey)
{
Factory = factory;
FactoryName = factoryName;
FactoryDescription = factoryDescription;
FactoryAssemblyQualifiedNameKey = factoryAssemblyQualifiedNameKey;
}
示例8: ProxyDbConnection
public ProxyDbConnection(DbConnection proxiedConnection, DbProviderFactory proxiedFactory)
{
ProxiedConnection = proxiedConnection;
ProxiedFactory = proxiedFactory;
Context = GetContext(this);
Guid = System.Guid.NewGuid().ToString();
}
示例9: DataAccess
public DataAccess(DbProviderFactory factory, string connectionString, string provider, int? commandTimeout)
{
_factory = factory;
_provider = provider;
_commandTimeout = commandTimeout;
_connection = GetConnection(connectionString);
}
示例10: CreateCommandDefinition
internal static EntityCommandDefinition CreateCommandDefinition(DbProviderFactory storeProviderFactory, DbCommandTree commandTree)
{
//Contract.Requires(storeProviderFactory != null);
//Contract.Requires(commandTree != null);
return new EntityCommandDefinition(storeProviderFactory, commandTree);
}
示例11: DatabaseManager
/// <summary>
/// Initializes a new instance of the <see cref="DatabaseManager"/> class.
/// </summary>
/// <param name="connectionProvider">The connection provider.</param>
/// <param name="providerName">Name of the provider.</param>
public DatabaseManager(DbProvider provider, string connectionString)
{
string providerName = provider.GetEnumMemberValue();
this.connectionProvider = DbProviderFactories.GetFactory(providerName);
this.providerName = providerName;
this.connectionString = connectionString;
}
示例12: DAOFactory
/// <summary>Instancia a DbFactory "setando a string de conexao"
/// </summary>
public DAOFactory(string connectionStringValue, string provider)
{
AppSettingsReader apps = new AppSettingsReader();
objProvider = DbProviderFactories.GetFactory(provider);
connectionString = connectionStringValue;
objConn = objProvider.CreateConnection();
}
示例13: DBHelper
/// <summary>
/// 构造函数--重载方法二
/// </summary>
/// <param name="connectionstring">数据库链接</param>
/// <param name="databasetype">数据库的类型</param>
public DBHelper(string connectionstring, string databasetype)
{
MyFactory = DbProviderFactories.GetFactory(databasetype);
MyConnection = MyFactory.CreateConnection();
MyConnection.ConnectionString = (databasetype.ToString() == "System.Data.OleDb") ? ("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + GetDataPath(connectionstring) + ";") : (connectionstring);
MyCommand = MyConnection.CreateCommand();
}
示例14: DynamicModel
public DynamicModel(ConnectionStringSettings settings, string providerName = "System.Data.SqlClient")
{
Errors = new List<string>();
_dbProviderFactory = DbProviderFactories.GetFactory(providerName);
_connectionString = settings.ConnectionString;
}
示例15: DynamicModel
/// <summary>
/// Create a dynamic model
/// </summary>
/// <param name="connectionStringName">the connection string name or the connection stirng itself</param>
/// <param name="tableName">the table name</param>
/// <param name="primaryKeyField">the primary key field name</param>
public DynamicModel(string connectionStringName, string tableName = "", string primaryKeyField = "")
{
TableName = string.IsNullOrEmpty(tableName) ? GetType().Name : tableName;
PrimaryKeyField = string.IsNullOrEmpty(primaryKeyField) ? "ID" : primaryKeyField;
try
{
_factory = DbProviderFactories.GetFactory(ProviderName);
}
catch (FileLoadException ex)
{
throw new MassiveException(string.Format("Could not load the specified provider: {0}. Have you added a reference to the correct assembly?", ProviderName), ex);
}
catch (ArgumentException e)
{
var foundClasses = "I did find these Factories:";
var dt = DbProviderFactories.GetFactoryClasses();
for (var i = 0; i < dt.Rows.Count; i++)
foundClasses += String.Format("|{0}|", dt.Rows[i][2]);
throw new ArgumentException(String.Format("{0}{1}{2}", e.Message, Environment.NewLine, foundClasses));
}
var conString = ConfigurationManager.ConnectionStrings[connectionStringName];
_connectionString = conString != null ? conString.ConnectionString : connectionStringName;
}