fha*_*eau 6 c# sqlite entity-framework-core
我正在尝试创建一个受密码保护的SQLite数据库,以便在使用Entity Framework Core的WPF应用程序中使用它.
我找到了如何从现有的SQLite DB(数据库第一种方法)生成我的DbContext和实体,但我无法使用受密码保护的DB.
实际上,我甚至不确定如何创建受密码保护的SQLite DB.加密数据库和受密码保护的数据库有什么区别?
fha*_*eau 10
根据这篇文章和这个问题,没有办法(还是?)使用Microsoft.Data.Sqlite程序集(由...使用)加密数据库EF Core
.
基于此,以下是我为使其工作所做的工作EF Core
:
在配置dbContext时,请提供optionsBuilder
您自己的DbConnection
:
var conn = new SQLiteConnection(@"Data Source=yourSQLite.db;");
conn.Open();
var command = conn.CreateCommand();
command.CommandText = "PRAGMA key = password;";
command.ExecuteNonQuery();
optionsBuilder.UseSqlite(conn);
Run Code Online (Sandbox Code Playgroud)从程序集中使用SQLiteConnection
(可以管理加密数据库)非常重要,System.Data.SQLite.Core
而不是SqliteConnection
从Microsoft.Data.Sqlite
.
根据这篇文章,你很可能使用了内置于SqliteConnection
通过更换sqlite3.dll
附带的内Microsoft.Data.Sqlite
由另外一个,处理加密数据库组件(你可以找到在这个免费的回购).但我没有测试过它.
这是怎么做的!
归档时间: |
|
查看次数: |
5140 次 |
最近记录: |