マルち*_* だよ 5 c# linq sqlite linq2db
我正在尝试做的是table在空数据库上打开连接时动态创建.我已经用Linqto 创建了模型Sqlite并成功地将它与非空数据库一起使用.
现在我正在尝试使用"新"数据库.
我做我的db.Insert如下:
using (MyDB db = MyDB("MyConnectionName"))
{
Person d = new Person()
{
name = "mimi"
};
db.Insert(d);
myLabel.Content = db.Drivers.First().name;
}
}
Run Code Online (Sandbox Code Playgroud)
打开一个空数据库确定.实际上是为它创建了一个0KB的文件.但是当我尝试在其中插入某些东西(或者当然是读取某些东西)时,我得到一个例外:SQL logic error or missing database
我正在使用的库:
https://github.com/linq2db/linq2db
该NuGet包:
http://nuget.org/packages/linq2db.SQLite/
And*_*mov 10
Linq2DB不会自动创建表.所以你必须检查表是否存在,如果不存在 - 创建它.你可以这样做:
var sp = db.DataProvider.GetSchemaProvider();
var dbSchema = sp.GetSchema(db);
if(!dbSchema.Tables.Any(t => t.TableName == "Person"))
{
//no required table-create it
db.CreateTable<Person>();
}
Run Code Online (Sandbox Code Playgroud)
不幸的是,缺乏文档.但是你可以使用测试样本.
| 归档时间: |
|
| 查看次数: |
6031 次 |
| 最近记录: |