2010-07-09 71 views
1

我一直在研究如何找到一個用於Silverlight /獨立存儲的嵌入式數據庫。大家都說由於非託管代碼,SQLite不能用於Silverlight。Silverlight 4&SQLite

根據我的經驗,只有一個名爲System.Data.SQLite.DLL的dll,我相信我可以從安裝的SQLite.NET或從NHibernate構建中獲得。

在c#代碼中配置時,您可以使用基於文件的數據庫,並指定要使用的文件。

所以我的問題是非託管代碼在哪裏?爲什麼不使用基於文件的數據庫並將其寫入獨立的存儲工作?而現在Silverlight 4支持OOB,對此有什麼影響?

答案提前感激。

問候

回答

0

SQLite作爲下載從sqlite.org寫入ANSI-C(參見features頁)。這就是大多數人在你說「SQLite」時所想到的,它絕對是非託管代碼。

System.Data.SQLite.DLL似乎是「一個用於SQLite數據庫引擎的開源ADO.NET提供程序」,並且是「對原始sqlite3.dll的一個完整的嵌入式替代品(如果您希望將其更名爲sqlite3.dll,重新使用它「),這看起來很酷。

但是,閱讀後,我看到「桌面原生SQLite庫和ADO.NET包裝器合併成一個混合裝配體」,這似乎是說該DLL包含託管和非託管代碼,這可能是一個問題。

+0

感謝Mike- 我可以測試,看看會發生什麼......但目前還不支持 我想這個問題可能是ADO.NET通過Silverlight。在這種情況下,提供者不會工作......任何人都知道在Silverlight 4中是否支持ADO.NET? – magellings 2010-07-09 15:38:46

1

我不知道你需要什麼功能,但是你可能也想看看Sterling

英鎊是一個輕量級的 面向對象的數據庫 實施Silverlight和 的Windows Phone 7與工作您的 現有的類結構。 Sterling 支持完整的LINQ to Object查詢 ,通過密鑰和索引進行快速檢索 數據集的大型 數據集。

Here是關於這個項目的介紹博客文章。

注意:在這篇文章發佈時,Sterling尚未發佈。你可以雖然下載的源代碼。

0

有在Silverlight沒有ADO.Net 4