在(PCL)可移植类库中使用Windows.Networking

时间:2013-12-22 18:27:50

标签: c# .net windows-phone-8 portable-class-library

我正在开发一个针对Windows 8.1(Windows应用商店应用)和Windows Phone 8的项目。需要一个库来创建和接收TCP / UDP数据包。

我有一段代码适用于每一个,WP8和Windows 8.1(使用完全相同的代码)。但是,当我想将这些代码放在一个可移植的类库中时,突然之间肯定不再使用指令:

using Windows.Networking;
using Windows.Networking.Connectivity;
using Windows.Networking.Sockets;

我知道PCL只有在框架之间重叠的功能集,但是因为这些指令在Windows 8.1类库和WP8库中工作,我的印象是我应该可以创建一个PCL

我错在哪里?如果真的没有办法将这些组合到PCL中,如何在不保留/维护每个目标的重复代码的情况下解决此问题?

1 个答案:

答案 0 :(得分:2)

这些是WinLT API,PCL目前不支持这些API。您可以在此处投票赞成此功能:http://visualstudio.uservoice.com/forums/121579-visual-studio/suggestions/4443287-make-winrt-api-usable-in-portable-class-libraries-

您现在的主要选择是放弃PCL,或者为此功能创建可移植的抽象,并为每个平台创建一个实现(在这种情况下,每个平台的代码都是相同的,可以通过链接文件共享)。