为什么我不能使用Xamarin在可移植类库中引用System.Net.Sockets?

时间:2014-06-04 18:38:36

标签: xamarin portable-class-library

我正在尝试在可移植类库中使用System.Net.Sockets API,以便我的项目可以重用套接字连接的代码。但我不能在我的代码中引用该命名空间。

据我所知,PCL将您限制在所有目标平台上可用的程序集。但我的目标是ios,Android和.Net 4.5(使用Xamarin),所有这些都应该包含包含API的system.dll程序集。我错过了什么?

2 个答案:

答案 0 :(得分:5)

就像现在一样,只有没有 PCL个人资料定位

  • .NET Framework(4 / 4.03 / 4.5 / 4.5.1)
  • Xamarin.Android
  • Xamarin.iOS

如果您尝试仅使用这些目标定义可移植类库,则项目PCL配置文件将自动添加 Silverlight 5 目标:

Silverlight 5 automatically added to PCL

即使 Silverlight 5 本身支持部分System.Net.Sockets namespace types,但这些类型都没有传输到任何PCL配置文件。据我所知,PCL System.Net 功能仅限于HTTP网络。

例如,如果选择了 .NET Framework 4.5 ,则这将对应于PCL配置文件24,其中 System.Net.dll 内容如下:< / p>

enter image description here

答案 1 :(得分:0)

使用高级PCL开发AKA“诱饵和开关”你可以做到这一点

请参阅link