Entity Framework使用Sqlite时的一些配置
作者:网络转载 发布时间:[ 2015/7/3 13:47:15 ] 推荐标签:数据库 SQLite
前段时间试着用Entity Framework for Sqlite环境,发现了一些坑坑洼洼,记录一下。
同时试了一下配置多种数据库,包括Sqlite、Sql Server、Sql Server LocalDB、Sql Server Compact。
我建的demo项目结构以及通过NuGet安装的包:
EFDemo.MultipleDB.UI引用了EFDemo.MutipleDB项目。
1. 遇到的异常1
The Entity Framework provider type 'System.Data.SQLite.EF6.SQLiteProviderServices, System.Data.SQLite.EF6' registered in the application config file for the ADO.NET provider with invariant name 'System.Data.SQLite.EF6' could not be loaded. Make sure that the assembly-qualified name is used and that the assembly is available to the running application. See http://go.microsoft.com/fwlink/?LinkId=260882 for more information.
我是是引用了Sqlite相关的dll了的(见下图),但是发现生成后再EFDemo.MultipleDB.UI下的生成文件中没有自动将这些dll拷贝过来。
于是我将这些手动拷贝过来了。
2. 遇到的异常2
刚才的异常没了,又出现了一个异常。
The Entity Framework provider type 'System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer' registered in the application config file for the ADO.NET provider with invariant name 'System.Data.SqlClient' could not be loaded. Make sure that the assembly-qualified name is used and that the assembly is available to the running application. See http://go.microsoft.com/fwlink/?LinkId=260882 for more information.
这次在代码里面加了这么一段,不用调用,只是在代码里让它存在:
/// <summary>
/// 解决provider不能自动加载的问题
/// (不需要调用,放在这里即可)
/// </summary>
private static void FixProvidersNotAutoLoadProblem()
{
var _ = typeof(System.Data.SQLite.EF6.SQLiteProviderFactory);
var __ = typeof(System.Data.Entity.SqlServer.SqlProviderServices);
var ___ = typeof(System.Data.Entity.SqlServerCompact.SqlCeProviderServices);
}
相关推荐
更新发布
功能测试和接口测试的区别
2023/3/23 14:23:39如何写好测试用例文档
2023/3/22 16:17:39常用的选择回归测试的方式有哪些?
2022/6/14 16:14:27测试流程中需要重点把关几个过程?
2021/10/18 15:37:44性能测试的七种方法
2021/9/17 15:19:29全链路压测优化思路
2021/9/14 15:42:25性能测试流程浅谈
2021/5/28 17:25:47常见的APP性能测试指标
2021/5/8 17:01:11