国产精品电影_久久视频免费_欧美日韩国产激情_成年人视频免费在线播放_日本久久亚洲电影_久久都是精品_66av99_九色精品美女在线_蜜臀a∨国产成人精品_冲田杏梨av在线_欧美精品在线一区二区三区_麻豆mv在线看

開源.NET下的XML數據庫介紹及入門

數據庫 其他數據庫
有時候嘗試未必是壞事,不斷嘗試新事務,才能發現新東西,增加閱歷,才能更容易面對復雜的情況。今天給大家帶來的是一個.NET下開源的XML數據庫。比較好用,輕量級,小巧,可以滿足一些特殊的變態的需求。

 比如我這次遇到的。一個小得不能小的工具,本來用sqlite+XCode很快就可以搞定的東東,“領導”說非要用XML存儲,那好吧。就用XML,雖然.NET操作XML很方便,但很好做。我的***反應是找一個C#操作XML文件的類,應該差不多了。沒想到就發現了XML數據庫這么個玩意,試用,初步還是不錯的,雖然有些小問題,也很久沒更新了。代碼資料還是老樣子,規矩看前面的博客說明,不在提示了。

XML Database初步介紹

XML Database是一套基于.NET 和 XML技術開發的數據庫產品,開發者是博客園的陳希章。其定位是面向.NET開發平臺的、小型的、面向對象的數據庫,比較適合于本地數據緩存、嵌入式數據庫應用的場景。上次更新日期是2011年了,沒有仔細去研究源碼,核心的程序集也才25K,所以夠輕量級。那說說其基本特點,更新后的版本的說明沒有找到,就看最老的版本的吧:

1.完全基于XML的存儲。數據庫的配置信息和對象數據、索引、日志全部是用XML格式保存的。這樣的出發點主要是XML數據格式很易于閱讀和傳輸,轉換。

2.基于文件夾的數據存儲。這個作者曾經有些猶豫,有時候也覺得沒必要,但如果關系復雜點的對象,還是有用的。

3.完全基于.NET編寫,結合了LINQ的語法。這個數據庫引擎也可以算是一個所謂的嵌入式的數據庫引擎吧,它是通過一個dll提供了全部的功能。目前提供的查詢是基于LINQ to Object的,所有的操作都是面向對象的。

4.目前有的功能主要是數據庫的創建、打開和關閉,以及面向對象的增刪查改,簡單的批處理和事務控制等。

簡單入門例子

存儲是面向對象的,對每一條數據,都會有一個GUID編號,可以去看生成的XML文件得知。平時我們要存儲在數據庫的對象,一般就是實體了,那看看我這個實體的簡單結構:

  1. /// <summary>人臉數據</summary>   
  2.  public class Faces  
  3.  { 
  4.      #region 屬性 
  5.      /// <summary>姓名</summary>        
  6.      public String Name { get; set; }     
  7.      /// <summary>年齡</summary> 
  8.      public Int32 Age { get; set; }            
  9.      /// <summary>性別</summary> 
  10.      public String Sex { get; set; }   
  11.      /// <summary>手機號碼</summary>        
  12.      public String Tel { get; set; }    
  13.      /// <summary>圖片位置</summary>       
  14.      public String Position { get; set; } 
  15.      /// <summary>圖像的特征值,不支持存儲數組類型,要轉換才行</summary>       
  16.      public string Eigenvalue { get; set; } 
  17.      #endregion 
  18.  } 

值得注意的是,我試了一下,好像不支持存儲數組結構,所以是數組的,要手動轉換一下。比如這個特征值,是double[]數組,用的時候,讀出來,要轉換為double[]才能用。格式嘛,自己定。看基本操作:

  1. //數據庫沒有會自動創建 
  2.    using (XDatabase db = XDatabase.Open(Main.DbName)) 
  3.    {     
  4.        //然后循環將特征值和圖像對應起來,添加到數據庫 
  5.        for (int i = 0; i < 20; i++) 
  6.        { 
  7.            //添加圖片信息 
  8.            Faces cut = new Faces(); 
  9.            cut.Name = Names[i]; 
  10.            cut.Sex = Sexs[i]; 
  11.            cut.Tel = Teles[i]; 
  12.            cut.Age = Ages[i]; 
  13.            cut.Position = fileNames[i]; 
  14.            //添加特征值 
  15.            cut.Eigenvalue = DoubleArrayToString (MeanB[i]); 
  16.            //保存到數據庫 
  17.            db.Store(cut); 
  18.        } 
  19.    //查詢,結果是IEnumerable<T>類型,可以用LINQ操作 
  20.        var t = db.Query<Faces>();      
  21.    } 

其實很簡單,輕量級的操作就是保存和查詢,更新,更新的操作很簡單,和保存一樣,內部會識別是新增的數據還是更新數據。查詢的結果是IEnumerable<T>類型,所有可以很方便的使用LINQ來得到你所要的結果。

當然還可能有其他的一些功能,比如事務,我的工具太簡陋,沒有用上,可以研究下。

說明一下,不要也不要說功能有限,有時候我們的需求就這樣,簡單的可以就行,沒必要搞那么復雜。OK,就算拋磚引玉吧,作者后來的更新也沒有說明,如果使用,可以用Nuget來獲取***的安裝包,地址看下節。

相關資源

開源網址:http://xmldatabase.codeplex.com/

作者博客:http://www.cnblogs.com/chenxizhang/

Nuget地址:http://nuget.org/packages/XMLDatabase

原文鏈接:http://www.cnblogs.com/asxinyu/archive/2013/03/25/2980086.html

 

責任編輯:彭凡 來源: 博客園
相關推薦

2011-07-12 10:09:08

XML數據庫服務器

2012-04-12 09:23:15

達夢數據庫

2009-02-23 15:20:03

SQL Server數據庫ASP.NET

2017-11-08 09:22:36

數據庫NoSQLArangoDB

2011-07-26 11:12:05

DBXML數據庫

2010-09-01 09:14:23

Effiproz

2011-03-29 09:40:31

SQL Server數據庫鏈接

2009-12-21 16:36:08

ADO.Net數據庫

2010-01-12 10:40:58

VB.NET數據庫壓縮

2010-06-10 10:57:57

2009-10-28 17:24:19

VB.NET介紹

2010-01-18 19:21:51

VB.NET存取數據庫

2010-06-11 13:22:32

2013-02-20 14:54:03

C#.NETNDatabase

2011-05-25 10:56:19

Oracle數據庫Unix環境優化

2011-08-15 14:12:16

SQL ServerDATEDIFF

2011-08-18 10:55:55

SQL ServerDATEADD

2009-02-04 17:36:11

ibmdwXML

2011-08-03 15:14:17

Excel XP數據庫功能

2023-09-15 16:03:59

向量數據庫開源
點贊
收藏

51CTO技術棧公眾號

一本色道久久综合亚洲二区三区| 国产丝袜在线播放| 国产情侣一区| 欧美激情视频一区二区| 日韩在线伦理| 91精品国产色综合久久不卡电影 | 欧美性受xxxx白人性爽| 中文字幕21页在线看| 91精品国产综合久久久久久| 日韩精品系列| 黑人巨大精品欧美一区二区| 永久免费不卡在线观看黄网站| 日本一区二区不卡视频| 亚洲色成人一区二区三区小说| 九九在线精品视频| 亚洲一区二区三区乱码| 日韩精品电影一区亚洲| 欧美在线一区二区三区四区| 国产精品日韩| 无码av免费一区二区三区试看| 欧美三级午夜理伦三级富婆| 国产丝袜欧美中文另类| av观看免费在线| 高清国产一区二区三区| 成人手机在线播放| 国产xxx精品视频大全| 国产精品视频二| 成人国产一区二区三区精品| 久久人人爽人人爽人人av| 日韩国产欧美视频| 亚洲精品中文字幕在线 | 国产一区二区三区四| 欧美高清性xxxxhdvideosex| 亚洲国产一区二区三区a毛片| 成人福利网站在线观看11| 精品国产一区二区三区香蕉沈先生| 国产99视频精品免视看7| 国产欧美一区| 91精品国产自产在线观看永久| 久久视频精品| av一区二区三区免费| 亚洲欧美文学| 欧美一区二区影视| 国产成人av影院| 青青草国产免费| 欧美激情一区二区三区四区| 国产视频97| 欧美午夜精品在线| 免费超碰在线| 亚洲美女激情视频| 美女国产精品久久久| 欧美亚洲另类在线| 国产精品大片免费观看| 日本在线播放不卡| 99久久精品99国产精品 | 国产成人av在线影院| 国产一区二区视频免费在线观看| 国产精品久久久久影院| 在线观看理论片| 在线成人小视频| 欧美电影免费观看| 4438全国亚洲精品在线观看视频| 久久久9色精品国产一区二区三区| 精品乱子伦一区二区三区| 激情文学综合插| 亚洲成色www.777999| 色婷婷一区二区| 日韩大尺度黄色| 日产日韩在线亚洲欧美| 一本色道久久综合亚洲精品不| 国产av第一区| 亚洲婷婷综合色高清在线| 尤物在线视频| 中文字幕精品久久久久| 自拍偷拍一区| 天堂精品一区二区三区| 亚洲欧洲日韩综合一区二区| 最近中文字幕免费mv2018在线| 日韩视频在线免费| 999精品在线| 欧美这里只有精品| 五月天久久比比资源色| 日韩国产欧美亚洲| 亚洲v日本v欧美v久久精品| av福利在线导航| 国产99视频在线观看| 狠狠色丁香久久婷婷综| 在线理论视频| 日韩精品在线播放| 国产精品不卡| 国产婷婷一区二区三区| 欧美视频一区二| 丁香婷婷成人| 一级黄色免费在线观看| 精品久久久久久中文字幕| 精品九九久久| 欧美在线日韩精品| 五月激情综合色| 免费观看成人性生生活片 | 国产在线观看黄| 中文字幕亚洲专区| 亚洲黄页一区| 成人黄网18免费观看的网站| 欧美一二三区在线观看| 国产精品亚洲片在线播放| www成人免费| 91精品国产高清一区二区三区| 免费电影一区二区三区| 自慰无码一区二区三区| 精品剧情在线观看| 一区二区三区午夜视频| 国产又大又黄又猛| 中文字幕亚洲专区| 麻豆国产欧美日韩综合精品二区 | 9999在线精品视频| 国产奶头好大揉着好爽视频| 欧美专区亚洲专区| 精品久久美女| 欧美精品成人网| 一区二区三区久久精品| 麻豆精品在线观看| 里番在线观看网站| 91亚洲国产精品| 亚洲综合图片区| 日韩精品欧美大片| 天天干天天操天天做| 欧美成人黄色小视频| 成人aa视频在线观看| 欧美成人精品三级网站| 亚洲国产精品一区二区第四页av| 色系网站成人免费| 91精品综合| 在线看片你懂得| 国产精品美女久久| 亚洲综合男人的天堂| 最新亚洲精品| 三年片观看免费观看大全视频下载| 欧美激情一区二区久久久| 不卡一区在线观看| 欧美精品资源| 婷婷无套内射影院| 久久久av电影| 99在线热播精品免费| 91成人在线网站| 男女曰b免费视频| 91精品国产精品| 一区二区久久久久| 你懂的国产精品永久在线| 999在线视频| 茄子视频成人在线观看 | 日韩国产一区三区| 蜜臀久久99精品久久久画质超高清 | 国产天堂亚洲国产碰碰| 中文字幕亚洲在线观看| 免费一区二区三区在线观看| 国语对白做受69| 伊人开心综合网| 国产精品x453.com| 免费毛片小视频| 久久久综合av| 亚洲福中文字幕伊人影院| 综合视频在线| 国内在线免费高清视频| 久久精品99久久| 亚洲高清av在线| 国产精品69毛片高清亚洲| а天堂中文最新一区二区三区| 国产成人综合一区| 国产精品r级在线| 欧美在线一二三四区| 日韩专区一卡二卡| 我爱我色成人网| 天天综合网久久| 亚洲一区二区三区在线视频| 欧美成va人片在线观看| 成人免费视频视频| 亚洲人成伊人成综合图片| 另类av导航| 日韩福利在线| 色与欲影视天天看综合网| 夜夜嗨av一区二区三区网页| 亚洲无线视频| 国产亚洲一区二区手机在线观看| 日韩精品一区二区三区不卡| 成人福利网站在线观看| 精品国产污污免费网站入口 | 久久99精品国产麻豆婷婷 | 网红女主播少妇精品视频| 偷拍25位美女撒尿视频在线观看| 欧美成人第一区| 久久午夜a级毛片| 亚洲国产成人tv| 三级欧美在线一区| 欧洲亚洲一区二区三区| 污视频在线观看免费| 男人草女人视频| 97碰碰碰免费色视频| 在线电影一区二区三区| 国产欧美中文在线| 日韩福利电影在线观看|