无法将.NET类库添加到Store apps项目

时间:2015-02-27 10:22:48

标签: windows-store-apps windows-8.1

我正在开发一个Windows应用商店应用,用于从网络摄像头捕获实时源,并使用MediaCapture API在CaptureElement控件中显示它。但是,我无法添加使用.NET framework v4.5开发的现有项目类库。我收到错误: “该项目的目标是.NET核心,而文件参考的目标是.NET框架。这不是一个受支持的场景”。 在论坛中搜索它时,我发现在转换为可移植类库时,我将能够添加它。所以我最终将我的dll转换为PCL,但发现PCL不支持很多基类库,如System.Data.dll不存在。此外,该PCL中的现有项目引用也应转换为PCL。所以这就像一个无限循环。 有解决方法吗?请建议。 提前谢谢。

1 个答案:

答案 0 :(得分:0)

这是预期和正确的。 Windows应用商店应用不使用完整的.Net Framework。他们仅使用.Net Framework for Windows Store个应用子集中的.Net类(请参阅.NET for Windows Store apps overview)。

您需要重构类库以依赖Windows Store应用程序可用的.Net命名空间。其他功能(例如文件和网络访问)可通过Windows运行时或第三方库获得。

没有System.Data的直接模拟。根据您使用的System.Data中的内容,您可以通过Web服务连接到远程服务器,也可以查看SQLite等本地数据库。

只要基本功能可用,您就可以通过编写与您的应用当前使用的接口匹配的类或附加方法来填补差异,但通过支持的方式实现行为。我在博客文章Porting tips: bridging differences in the .Net Framework for Windows Runtime apps

中讨论了这样做的一些策略