跨平台的Sqlite

14 浏览
0 Comments

跨平台的Sqlite

我正在编写一个需要在iOS、Android、Windows Phone、WPF、Windows 8 Metro、Linux和Mac上运行的应用程序。目前我已经将大约95%的代码放在了跨平台领域中,但是界面和一些其他方面显然需要为每个平台编写特定的代码。

现在,我们需要在应用程序中添加一些非常简单的数据库支持,我希望在我的代码中使用跨平台领域中的Sqlite。是否可以使用现有的Sqlite封装器来实现这一点,还是需要我自己创建一个?或者我应该使用几个具有相同语法的Sqlite封装器,只需从不同的csproj文件中引用不同的库(根据平台)?

我已经阅读了这个问题的问答:Is there a .NET/C# wrapper for SQLite?,但是经过一个小时的阅读,我仍然不确定如何在所有这些平台上使其工作,所以我想可能有人在我之前就已经考虑过这些问题了。

0
0 Comments

跨平台Sqlite的问题出现的原因是需要在不同的操作系统环境下运行C#项目,并且需要访问Sqlite数据库。为了解决这个问题,可以使用Mono版本的Sqlite包装器,这个包装器完全由托管代码编写,并且只需要为相应的环境提供Sqlite库。另一种解决方法是使用官方的C#包装器,但是它对多平台的处理方式不确定。

下面是整理后的文章:

跨平台Sqlite的问题出现的原因是需要在不同的操作系统环境下运行C#项目,并且需要访问Sqlite数据库。为了解决这个问题,有两种方法可以尝试。

第一种方法是使用Mono版本的Sqlite包装器。这个包装器完全由托管代码编写,并且只需要为相应的环境提供Sqlite库。你可以从http://www.mono-project.com/SQLite下载并使用这个包装器。通过使用这个包装器,你可以在Linux和Windows上运行你的C#项目。

第二种方法是使用官方的C#包装器。你可以从http://system.data.sqlite.org/下载这个包装器。然而,对于它如何处理多个平台,目前还不确定。你可以尝试使用它来解决你的问题。

无论你选择哪种方法,都可以在不同的操作系统环境下运行C#项目,并且访问Sqlite数据库。希望这些方法能够帮助你解决问题。

0
0 Comments

跨平台SQLite问题的出现的原因是为了在.NET/C#开发中实现跨平台的SQLite功能。为了解决这个问题,开发者提供了几个选项。

第一个选项是SQLitePCL.raw,它是一个用于访问SQLite的轻量级C#包装器。它的API与应用程序开发者的角度不友好,但设计为可用作通用的可移植层,以构建更友好的包装器。

第二个选项是SQLitePCL.pretty,它在SQLitePCL.raw的基础上提供了一个友好的面向对象的API。它具有广泛的单元测试覆盖率,并支持较新版本SQLite中提供的许多新功能。

第三个选项是SQLite-net,它是一个简单、强大、跨平台的SQLite客户端和ORM。它易于与现有项目集成,并在所有.NET平台上运行,具有执行CRUD操作和查询的简单方法,并以强类型的方式检索查询结果。

第四个选项是Microsoft.Data.Sqlite,它是System.Data.Common接口的SQLite实现,是ASP.NET Core的一部分,由Microsoft维护。

以上这些选项都可以在各种平台上使用,包括Xamarin.Android、Xamarin.iOS、UWP、Windows Phone等。

这些选项的源代码和许可证信息可以在相应的链接中找到。

0