关于.NET C#调用Sqlite的总结二

关于.NET C#调用Sqlite的总结一

在上一篇中我一直疑惑为什么我在使用多层架构进行开发时总是会报些莫名的错误,难道要使用Sqlite就不能分层吗?只能将UI、业务逻辑、数据访问统统都要写在一层里吗?当真不能分层开发吗?

抱着不信邢的心念,下了班回到家又继续研究起来。经过一翻折腾又有些小收获,在此继续分享下!

我的测试代码结构如下:

1、经过测试不管你的机器是x86还是x64的,只要到Sqlite官网下载对应.NET Framework版本的Win32版的就可以了。我自己尝试引用跟自己机器(x64)一样版本的System.Data.Sqlite.dll另外也将每一个类库的Platform target修改为x86的,可最终还是会出现如下异常:

2、另外当你引用了32位的System.Data.Sqlite.dll后,可以不用将每个项目的Platform target修改为x86。但是要注意一点就是一定要将你的主项目的Prefer 32-bit打上勾或者将每一项目的Platform target修改为x86,要不然还是会出现上面的异常。如下图:

对于上一篇结尾说了使用Sqlite就不能对项目进行分层的说法是错误的。经过自己的测试实际情况是可以分层使用的。

对于Sqlite的使用总结就暂时到此!以上都是自己在实践中总结的,可能有些地方是错误的。如有园友阅读发现有不正之处欢迎指出!

时间: 2024-10-18 08:11:17

关于.NET C#调用Sqlite的总结二的相关文章

Android中使用Sqlite数据库 (二) 增删改查

定义接口 package com.example.android_db.service; import java.util.List; import java.util.Map; public interface PersonService { public boolean addPerson(Object[] params); public boolean deletePerson(Object[] params); public boolean updatePerson(Object[] p

RT/Metro商店应用如何调用SQLite数据库

RT/Metro商店应用如何调用SQLite数据库 使用前,要安装:SQLite for Windows Runtime (Windows 8.1)(一个VS插件).还有Visual C++ Runtime Package(如:Microsoft Visual C++ 2013 Runtime Package for Windows), 同时,项目生成要修改为X86或者X64,总之不能使有和AnyCPU.我这里使用的是X86. private async void Create() { //数据

Android基于ksoap2调用WCF服务(二):Android篇

上一篇通过一个非常简单的例子,完成了一个WCF的服务.接下来介绍一下Android端. Android端调用WCF,采用基于ksoap2包来实现. 下载地址(这个需要fan qiang访问,你们懂的):https://code.google.com/p/ksoap2-android/ 我用的3.3.0版本,我传到csdn上,上面地址如果不能访问,可以用这个地址:http://download.csdn.net/detail/cnryc/7695437 程序的源代码下载地址:http://down

C#中的异步调用及异步设计模式(二)——基于 IAsyncResult 的异步设计模式

三.基于 IAsyncResult 的异步设计模式(设计层面) IAsyncResult 异步设计模式通过名为 BeginOperationName 和 EndOperationName 的两个方法来实现原同步方法的异步调用,如 FileStream 类提供了 BeginRead 和 EndRead 方法来从文件异步读取字节,它们是 Read 方法的异步版本 Begin 方法包含同步方法签名中的任何参数,此外还包含另外两个参数:一个AsyncCallback 委托和一个用户定义的状态对象.委托用

在Android 中调用sqlite数据库

1在Android studio 工程中gradle文件夹右击新建assets文件夹.将建好的sqlite数据库导入其中. 2在主activity中判断app是否是第一次启动调用如下方法: /**检查APP是否为第一次启动*/private int CheckFirstActivate(){ /*设定数据库转移状态*/ int SetSQLiteDatabase_state = 0; /*检查APP是否为第一次启动&转移数据库*/ SharedPreferences sharedPreferen

SQLite的使用(二):数据增删改查

SQLiteDatabase 用来管理SQLite数据库的类.SQLiteDatabase新增.修改.删除和查询数据库数据的方法,还可以执行其他常见的数据库管理任务. 方法 描述 (void) execSQL(String sql) 执行一个SQL语句的方法 (long) insert(String table,String nullColumnHack,ContentValues values) 添加数据行的方法 (int) update(String table, ContentValues

Sqlite学习笔记(二)&&性能测试

测试目标 获取SQlite的常规性能指标 测试环境 CPU:8核,Intel(R) Xeon(R) CPU E5-2430 0 @ 2.20GHz 内存:16G 磁盘:SSD Linux 2.6.32 SQlite最新版本3.8.11 测试场景 1)  主键查询测试 2)  主键更新测试 3)  批量导入测试 初始化 1)  测试表结构 CREATE TABLE user( id integer primary key autoincrement, c1 int, c2 varchar(1000

Android学习笔记_数据库(SQLite)(二)

一.修改数据库的表结构(更新数据库版本). 1.在PersonSQliteOpenHelper类中,PersonSQliteOpenHelper的构造方法中需要传入4个参数,最后一个便是数据库版本.当版本数值变化(只能是增加)时就会调用PersonSQliteOpenHelper类中的onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion)方法. 2.在onUpgrade方法中采用执行SQL语句来更改数据库的表结构.采用SQLite

VC与Matlab混合编程之调用动态链接库dll(C++)——<二>

VC与Matlab混合编程之调用动态链接库dll--<二> 1.是先建立 matlab 的 m 文件. ellipsefit.m 其包含:function [Xc,Yc,A,B,Phi,P]=ellipsefit(x,y) 2.MCC命令编译生成得到h.dll.lib等文件 在matlab命令行中输入: mcc -W cpplib:ellipsefit ellipsefit.m -T link:lib (此方式为c++风格函数) (具体命令含义可参考<精通matlab与C/C++混合程序