.NET Core 项目 DbProviderFactories.GetFactoryClasses()返回空


.NET Core 项目中由于没有app.config,无法再.config中注册DBFactory,

导致 DbProviderFactories.GetFactoryClasses() 获取为空

解决方案

使用前先注册

如果此列表需要与新的数据库提供商(例如 SqlClient)一起扩展,则需要在报告处理之前执行以下行:

DbProviderFactories.RegisterFactory("SqlClient Data Provider", Microsoft.Data.SqlClient.SqlClientFactory.Instance);

如果数据提供商不提供静态实例,提供商可以使用工厂装配合格名称进行注册

DbProviderFactories.RegisterFactory("SqlClient Data Providerff", "Microsoft.Data.SqlClient.SqlClientFactory, Microsoft.Data.SqlClient, Version=3.0.0.0, Culture=neutral, PublicKeyToken=23ec7fc2d6eaa4a5");

如何根据数据库提供的实例得到AssemblyQualifiedName字符串呢?如图

DATABASEDBPROVIDERFACTORY TYPE NAME
MSSQLSystem.Data.SqlClient.SqlClientFactory
SQLiteSystem.Data.SQLite.SQLiteFactory
MySqlMySql.Data.MySqlClient.MySqlClientFactory
PostgreSqlNpgsql.NpgsqlFactory
OracleOracle.ManagedDataAccess.Client.OracleClientFactory

 

参考:

https://docs.telerik.com/reporting/knowledge-base/how-to-register-db-provider-factory-in-net-core-project 

https://stackoverflow.com/questions/53336341/empty-dbproviderfactories-in-net-core-application-and-mashine-configs

 

 

版权声明:本文为YES开发框架网发布内容,转载请附上原文出处连接
YES开发框架
上一篇:VS2019找不到资产文件 "xxxx\obj\project.assets.json" 解决方案
下一篇:.NET Core 项目 DbProviderFactories.GetFactoryClasses()返回空
评论列表

发表评论

评论内容
昵称:
关联文章

YES-CMS内容管理系统 售价

联系我们
联系电话:15090125178(微信同号)
电子邮箱:garson_zhang@163.com
站长微信二维码
微信二维码