淺談Windows Phone 7本機資料庫的選擇

來源:互聯網
上載者:User
簡介

最近在選擇Windows Phone 7的本機資料庫,把經驗記錄下來。資料庫的選擇,我考慮以下幾點: 效能穩定性footprint(佔用檔案和記憶體大小),費用(許可證類型),易用性(訪問方式,是否提供管理工具等)。下面講述Windows Phone下我所瞭解到的一些資料庫實現以及其優缺點。 

 

Windows Phone 7 database

http://winphone7db.codeplex.com/

Windows Phone 7 database是一個基於Isolated Storage (隔離儲存區 (Isolated Storage))來實現的資料庫,發布在codeplex的開來源資料庫,使用MS開源許可證,可以自由使用到開源或者商業項目中,優點是免費,footprint非常的小,支援LINQ。缺點是太新,沒有商用經驗,穩定性不明確,沒有管理工具,不支援SQL。

Perst Embedded Database For Microsoft Windows Phone 7

http://www.mcobject.com/perst_eval
Perst是一個開源的對象資料庫(object-oriented embedded database system),有.NET和Java的實現。 .NET的實現支援Silverlight和Windows Phone 7。這是雙許可證,GPL和商用。GPL免費用在開源項目,商用需要購買許可證。支援多平台:.NET, .NET Compact Framewrok, Silverlight, Windows Phone.支援LINQ和JSQL,豐富的文檔和例子程式。Footprint不大也不小,499k。

db4o

http://developer.db4o.com/
db4o 是老牌的對象資料庫(object-based database), 有Java和.NET版本的實現。 db4o for Silverlight版本可以用於Windows Phone。 db4o文檔和例子程式都非常的豐富。支援Mono, .NET, .NET Compact Framework和Silverlight等平台,是最為成熟的產品。 其支援LINQ也同時支援原生查詢,功能非常強大。db4o採用雙許可證,GPLv2和商用,開源免費使用,商用需要購買。由於功能十分強大,footprint也非常的大,光Db4objects.Db4o.dll就有688k,加上其他組件差不多1M的大小。

siaqodb

http://siaqodb.com/
siaqodb 是一個非開源的對象資料庫, 可以運行在.NET 3.5+, Mono 2.4+, Silverlight 3/4 以及Windows Phone. LINQ是唯一支援的介面,不支援SQL,由於只是支援高版本,沒有相容性問題,footprint非常的小,只有128k,非常適合使用在Windows Phone上。而且siaqodb包含了Windows Phone 7的例子程式,方便開發,文檔也比較全,還有包含查詢工具,非常好用。是我覺得比較好的選擇。唯一考慮的是非開源,只有商業許可證,$180個人許可證。還在考慮是否購買ing。

    Sqlite for Windows Phone 7

    http://sviluppomobile.blogspot.com/2010/03/sqlite-for-wp-7-series-proof-of-concept.html

    Sqlite大名鼎鼎的嵌入式資料庫,基本是智能手機裝置的事實標準。Sqlite for Windows Phone 7修改自C# Sqlite,把儲存介質改為Isolated Storage。其實我開始的時候偏向與使用Sqlite,因為其方便易用,移植性強,具有大量的商業經驗,管理工具也十分的豐富,而且完全免費使用,沒有許可證限制。但是Sqlite比較大,有514k,而且不支援LINQ,甚至不支援ADO.NET,只是支援sqlite原始的API,開發很不方便,例如讀出的結果集不能放到DataSet和DataReader裡面。

     

    EffiProz Database for Windows Phone 7

    http://www.effiproz.com/product_wp.aspx

    http://effiproz.codeplex.com/

    EffiProz Database 是另外一個開源的RDBMS資料庫,支援Windows Phone,支援預存程序,觸發器等功能,支援ADO.NET甚至Entity Framework,功能也異常強大。支援雙許可證,開源使用MS開源許可證,商用單使用者$400。可是這個資料庫的footprint非常大,1361k,這麼大的footprint令我失去了使用的興趣了。同時開源版本不怎麼更新,新功能模組都在商業版上實現。

     

    我在看Windows Phone 7 database的原始碼,Windows Phone 7 database支援從XAP中匯出XML檔案到Isolated Storage資料庫中。  如果效能ok,我就選擇Windows Phone 7 database了,但是擔心這個資料庫太新,以後還要自己修改源碼來實現功能。也考慮是否購買siaqodb,這個資料庫很不錯,可惜不開源。

     

     

    系列文章

    如果對Windows Phone 開發感興趣,推薦閱讀我的系列文章,適合具有.NET經驗的開發人員,入門Silverlight for Windows Phone的開發。 

    林永堅(Jake Lin)的Silverlight for Windows Phone 7開發系列文章 – From zero to hero

     

     

     

    相關文章

    聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.