如何使用微软企业程序库6

教育网编2023-04-09 11:031970

企业库6的DAAB使用方法变了参考一篇文章

Database provider factory not set for the static DatabaseFactory

18. August 2013 Anil Asp.Net , C# , Enterprise Library Comments (0)

'Database provider factory not set for the static DatabaseFactory. Set a provider factory invoking the DatabaseFactory.SetProviderFactory method or by specifying custom mappings by calling the DatabaseFactory.SetDatabases method.'

New Enterprise Library version 6 requires to set for factory method if we are using xml configuration files to configure application blocks. Since you are using Data Access Application Blocks, so you need to set DatabaseProviderFactory.

SetDatabaseProviderFactory is one time setting before using application block. That’s why in our sample solution I have kept this line of code into static constructor -

1
2
3
4

static ModelMasterDataAccess
{
DatabaseFactory.SetDatabaseProviderFactory(newDatabaseProviderFactory );
}

Another good approach is to use DataBaseProviderFactory class directly. I have commented this in our sample solution.

1
2

DatabaseProviderFactory factory = newDatabaseProviderFactory ;
Database db = factory.Create('ConStringAutoMilesSqlDB');

使用方法,找到Global.asax文件,在Start函数内添加DatabaseFactory.SetDatabaseProviderFactory(new DatabaseProviderFactory );

评论区