0

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

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

另外,我不是在 MVVMCross 上开发的。

4

2 回答 2

2

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

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

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

于 2013-07-19T05:09:44.650 回答
0

我肯定会使用 MvvmCross 插件。我们目前在一个不整体使用 MvvmCross 的项目中使用它们。

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

MvvmCross 插件链接

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

于 2013-07-19T05:14:01.007 回答