Silverlight、MonoTouch、MonoDroid和Windows Phone的本地数据库

Silverlight、MonoTouch、MonoDroid和Windows Phone的本地数据库,silverlight,windows-phone-7,xamarin.ios,xamarin.android,Silverlight,Windows Phone 7,Xamarin.ios,Xamarin.android,我正在寻找一个本地数据库,该数据库将与Silverlight、Windows Phone、MonoDroid和MonoTouch一起使用 我的应用程序可能会将数据库视为只读,但我不想对每个平台的数据进行重新编码。(我也非常接近于仅仅使用XML。)我在我的应用程序的Mono for Android和MonoTouch版本中使用了Mono.Data.Sqlite库,并在Windows Phone上使用了这些库 并不是所有的功能都是用这个版本实现的,但是大多数都是可以使用的 我使用了一个稍微修改过的库

我正在寻找一个本地数据库,该数据库将与Silverlight、Windows Phone、MonoDroid和MonoTouch一起使用


我的应用程序可能会将数据库视为只读,但我不想对每个平台的数据进行重新编码。(我也非常接近于仅仅使用XML。)

我在我的应用程序的Mono for Android和MonoTouch版本中使用了Mono.Data.Sqlite库,并在Windows Phone上使用了这些库

并不是所有的功能都是用这个版本实现的,但是大多数都是可以使用的

我使用了一个稍微修改过的库版本作为一个非常基本的ORM。sqlite net使用了Windows Phone上不允许的P/Invoke,因此我删除了这些,并用其他库中的类(例如:SqliteCommand)替换了它

还有一点很好,就是它们具有相同的方法签名,所以我所要做的就是:

#if WINDOWS_PHONE
    using Community.CsharpSqlite.SQLiteClient;
#else
    using Mono.Data.Sqlite;
#endif

我相信sterling db会起作用。值得一看,它简单但功能强大。

Db4objects似乎是一个很棒的数据库。它与Java和.NET配合使用(可与Win Phone配合使用)。它拥有GPL和商业许可证。它是一个对象数据库,因此不需要ORM、映射等


XML可能是一个有效的解决方案,但在我看来,您可以关注SQLite。您可以在MT、MD和Windows Phone中使用它,我认为在SL中也可以使用它(但我不太确定)。