我试图在三个应用程序中共享我的所有业务逻辑代码:一个 android 应用程序、一个 iOS 应用程序和一个 Winforms 应用程序。所有这三个应用程序都需要访问本地 Sqlite 数据库,我假设我可以使用 Mono.Data.Sqlite 来完成这三个应用程序。
因此,我设置了一个 Android 类库和一个常规的 .NET 类库,并将这些项目链接在一起。这适用于除 Sqlite 代码之外的所有内容。我不能仅仅引用 Mono.Data.Sqlite.dll 并让它在 Winforms 应用程序中工作吗?如果我这样做了,它仍然无法修复以下错误:
找不到类型或命名空间名称“SqliteConnection”(您是否缺少 using 指令或程序集引用?)
找不到类型或命名空间名称“SqliteDataReader”(您是否缺少 using 指令或程序集引用?)
现在,我认为添加对 Mono Sqlite DLL 的引用可以解决这个问题,但显然不是。它甚至找不到 Mono 命名空间本身。
我在想我可能需要一个专门为 Windows 而不是 Android 编译的 Mono.Data.Sqlite DLL。它是否正确?如果是这样,我可以在某处找到预编译的二进制文件吗(初步搜索没有返回任何有用的信息)。
或者我是否必须为 SQLite 代码编写一个包装器,以便它只在 Winforms 应用程序中使用 System.Data.SQLite(我希望避免这种情况,因为方法不同)?部署到 MonoTouch 时我是否必须这样做?几乎所有的 Mono 框架都会出现这种情况吗?
我只是想了解一下与 Mono 的代码库共享以及它如何应用于多个平台。这是我迄今为止的第一个主要障碍。我的目标是基本上为所有逻辑提供一个代码库,然后为每个平台编写本机 UI 代码。
谢谢!