×

Loading...
Ad by
  • 最优利率和cashback可以申请特批,好信用好收入offer更好。请点链接扫码加微信咨询,Scotiabank -- Nick Zhang 6478812600。
Ad by
  • 最优利率和cashback可以申请特批,好信用好收入offer更好。请点链接扫码加微信咨询,Scotiabank -- Nick Zhang 6478812600。

可以,Object DB就是以Object Type为基准存取数据,看看我附加的例子:

DB4O sample: 把两个Pilot类存入数据库myDB.db40,代码如下
using (IObjectContainer db = Db4oEmbedded.OpenFile("myDB.db4o"))
{
    Pilot pilot1 = new Pilot("toronto 1", 100);
    db.Store(pilot1);                

    Pilot pilot2 = new Pilot("toronto 2", 99);
    db.Store(pilot2);
}
在另外一段完全无关的程序中,如果提取刚存入的2条记录,代码如下:
using (IObjectContainer db = Db4oEmbedded.OpenFile("myDB.db4o"))
{
    IList<Pilot> pilots = db.Query<Pilot>(typeof(Pilot));

    foreach (var x in pilots)
    {

    }

}
很简单,DB4O naturally 可以按照typeof()类型来提取数据,当然这只是其中一种方法,还有很多变形
Report

Replies, comments and Discussions:

  • 工作学习 / 学科技术讨论 / 想找一款.net可以用的桌面数据库,除了Access,还有什么其他更好的选择吗?不太想用Access是因为Jet引擎7-8年前就停止更新了,现在市场上有没有更新更好的桌面数据库?多谢阿
    • FileMaker Pro, Alpha Five, Paradox, Lotus Approach 听说过,都没用过。大多有.net API
      • 多谢啊,回家看看
    • Does something prevent you from using SQL Express as desktop database?
      • 是一个小项目,对方要求数据库可以便携,就是文件形式的,通过拷贝+粘贴就可以移动数据库,SQL Express好像必须安装吧?在Windows Service中运行,不符合对方要求
        • Try SQL CE
        • Try SQLite, Derby, or Berkeley DB.
    • 多谢楼上各位大神,俺再看这个开源数据库DB4O,也是嵌入式的,很诱人啊,Object Database,这个怎么样?
      • Does a small project deserve you spending time on a tool and technology totally new to you and few people know about it?
        • 呵,是俺揽的一私活,钱不多,所以时间也不着急。Object DB总是听说,这次也就重点关注了一下,因为总算可以有个机会自己随便选择数据库了。不过这个DB4O还真好用,昨晚上试用了几个小时,现在已经爱不释手。
          • One silly question, if same objects in one app are saved to the db, can other apps retrieve them and identify their types?
            • 可以,Object DB就是以Object Type为基准存取数据,看看我附加的例子:
              DB4O sample: 把两个Pilot类存入数据库myDB.db40,代码如下
              using (IObjectContainer db = Db4oEmbedded.OpenFile("myDB.db4o"))
              {
                  Pilot pilot1 = new Pilot("toronto 1", 100);
                  db.Store(pilot1);                
              
                  Pilot pilot2 = new Pilot("toronto 2", 99);
                  db.Store(pilot2);
              }
              
              在另外一段完全无关的程序中,如果提取刚存入的2条记录,代码如下:
              using (IObjectContainer db = Db4oEmbedded.OpenFile("myDB.db4o"))
              {
                  IList<Pilot> pilots = db.Query<Pilot>(typeof(Pilot));
              
                  foreach (var x in pilots)
                  {
              
                  }
              
              }
              很简单,DB4O naturally 可以按照typeof()类型来提取数据,当然这只是其中一种方法,还有很多变形
            • 事实上DB4O的API并不复杂,上手实在是太快了,不需要关系数据库的任何知识,非常适合对于速度和性能要求不太高的小型项目。不过俺也在玩SQL CE,也很优秀,和Visual Studio结合实在是太好了。Windows Phone 7.5里面就集成了SQL CE
    • SQLite 如何?