使用可移植类库时,SQLite与WinRT和Windows Phone应用程序的通用接口

本文关键字:Phone Windows 应用程序 接口 类库 可移植 SQLite WinRT | 更新日期: 2023-09-27 18:23:47

这本质上是为了将为WinRT应用程序编写的大量代码重新用于调用DB层的Windows Phone 8应用程序。我打算将一些DB访问调用从WinRT应用程序移植到共享的Portable类库,但SQLite(甚至是.NET插件)不能在这里直接使用,也不能从非PCL包导入。

对我来说,一种可行的方法是为SQLite创建一个PCL,该PCL将具有一个接口,该接口将使用构造函数注入加载平台依赖项,然后在PCL中引用该SQLite PCL,以便在WinPhone和WinRT之间共享。有人能指出这方面的潜在缺点吗?

此外,我不是在MVVMCross上开发。

使用可移植类库时,SQLite与WinRT和Windows Phone应用程序的通用接口

我想其中一个缺点是包装器不应该包含任何逻辑,否则你将不得不为每个平台复制它。除此之外,您将具有更高级别的复杂性,并且可能必须首先介绍依赖项注入背后的原理。

你在SO上看到这个帖子了吗?

此外,还有一篇关于msdn的文章描述了如何使用pcl和依赖项注入。

我肯定会使用MvvmCross插件。我们目前正在一个项目中使用它们,该项目不使用MvvmCross作为一个整体。

使用IOC/Di容器非常容易集成。

Mvvm交叉插件链接

最需要注意的是,您不需要使用MvvmCross来使用插件。