作者:仰望天空说再见 | 来源:互联网 | 2023-08-31 16:40
--前记由于自己的密码太多又不容易记住,经常性的会忘记。所以想找个管理软件管理下,可用网上下载的担心不安全。于是自己开始动手写个属于自己的密码管理软件。因为自己一直做的是WEB开发,对WPF懂的不是很
--前记
由于自己的密码太多又不容易记住,经常性的会忘记。所以想找个管理软件管理下,可用网上下载的担心不安全。于是自己开始动手写个属于自己的密码管理软件。
因为自己一直做的是WEB开发,对WPF懂的不是很多紧管在大学用过WinForm写过软件。然数据库呢?刚开始想用MSSQL可是它不方便复制移动,而且前提要安装MSQL软件。后来就想到使用SQLite,它方便复制移动也不需要安装什么软件。另外代码管理工具用的是我自己的GitHub。
因为第一次用SQLite作数据库,于是发什么了各种莫名的异常。网上查了一些,可有些与我遇到的完全不一样。
开发环境:Win10 x64、VS2013 UP5、.NET Framework 4.5
我的项目框架:
它们之间的引用如下:
MyPasswordManage UI层引用以下类库(BLL、Common、Model)
PasswordManage.BLL 业务层引用(Common、DAL、Model)
PasswordManage.DAL 数据层引用(Common、Model)
因为自己的机器是64位所以一开始下载了sqlite-netFx45-binary-bundle-x64-2012-1.0.97.0.zip包并在DAL层引用了System.Data.SQLite.dll
可以在编译时报了个如下的错
在网上查了下,有人说要将引用dll的那个项目的Platform target改为x86,并且要使用sqlite-netFx45-binary-bundle-Win32-2012-1.0.97.0.zip 即将平台修改为32位,同时要引用32位的Sqlite dll。
可最后还是不能解决问题。最后自己又写了个Demo并且不分层,即将数据读写和业务逻辑都写在UI层上,共一层。这样就不再报错了。另外在连接Sqlite库时写要注意下:
我们一般都会这么写
这时会说无效的连接串。后来查了下改为下面的写法就可以读取了
以上就是我自己个人遇到的一些问题总结。
发现用Sqlite不能分层不知道为什么,好奇怪。如果有用Sqlite开发的,并且可实现分层,请分享下呀!^-^
--后记
关于.NET C#调用Sqlite的总结二