使用SQLite-net库创建表

时间:2013-05-14 08:48:02

标签: c# wpf sqlite mvvm

我正在研究SQLite - .net(https://github.com/praeclarum/sqlite-net),以便为我的项目添加本地存储。
我想出了几个问题:

  1. 表格是按 模型 创建的,然后为了创建表格,应使用此代码:

    var db = new SQLiteConnection("foofoo");  
    db.CreateTable<Stock>();  
    db.CreateTable<Valuation>();
    

    问题是,在MVVM方法中,这将被写入? 我想过bootstrapper.cs,但我不太确定它有多有效。

  2. 在其中一个示例中,这是某个模型的示例代码:

    public class Valuation  
    {  
        [PrimaryKey, AutoIncrement]  
        public int Id { get; set; }  
        [Indexed]  
        public int StockId { get; set; }  
        public DateTime Time { get; set; }  
        public decimal Price { get; set; }  
    }  
    

    [Indexed]语句是否仅将 应用于StockId,还是应用于所有三个StockIdTimePrice?< / p>

1 个答案:

答案 0 :(得分:0)

数据服务!只需创建一个DataService类。将它传递给数据库或查找配置。让构造函数创建SQLiteConnection,创建表,添加任何默认数据。

如果您使用的是IOC容器,则可以注册DataService以在ViewModel中使用。考虑使用设置为True的create immediate标志进行注册,以便立即初始化数据库。

抱歉,我目前没有一个有效的例子。