【发布时间】:2012-07-19 20:35:35
【问题描述】:
我正在尝试跨三个应用程序共享我的所有业务逻辑代码:一个 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 代码。
谢谢!
【问题讨论】:
标签: winforms sqlite mono cross-platform xamarin.android