C# 实现rda.SocketsForPCL Xamarin表单PCL

C# 实现rda.SocketsForPCL Xamarin表单PCL,c#,sockets,xamarin.forms,tcpclient,portable-class-library,C#,Sockets,Xamarin.forms,Tcpclient,Portable Class Library,我需要创建一个到连接到设备的无线路由器的tcp连接,然后传递一个数据缓冲区。 也就是说,我从NuGet安装了插件,但这会产生错误: 已加载套接字的空PCL实现。确保你有 将Sockets nuget包添加到每个平台项目中 xamarin forms pcl项目的实施: 调用方法: var address = "192.168.222.1"; var port = 5555; var r = new Random(); try { var client

我需要创建一个到连接到设备的无线路由器的tcp连接,然后传递一个数据缓冲区。 也就是说,我从NuGet安装了插件,但这会产生错误:

已加载套接字的空PCL实现。确保你有 将Sockets nuget包添加到每个平台项目中

xamarin forms pcl项目的实施:

调用方法:

  var address = "192.168.222.1";
  var port = 5555;
  var r = new Random();

    try
    {
       var client = new Sockets.Plugin.TcpSocketClient();
       await client.ConnectAsync(address, port);
    }
    catch(Exception ex)
    {
        throw ex;
    }

在设备上启动应用程序时,出现以下错误:

已加载套接字的空PCL实现。确保你有 将Sockets nuget包添加到每个平台项目中

为什么我会犯这样的错误?一切都是相连的,一切都是相连的。
我该怎么修理?我忘了什么?

我不知道OP得出了什么结论,但我也有同样的问题。我在一个可移植项目中使用NuGet包“rda.SocketsForPCL”

我在Windows应用程序项目中引用了portable项目。在可移植项目中尝试创建TcpSocketClient时,它会引发异常。结果表明,Windows应用程序中未引用的NuGet包导致了此异常


因此,将NuGet引用添加到Windows应用程序项目解决了这个问题。

我不知道OP得出了什么结论,但我遇到了同样的问题。我在一个可移植项目中使用NuGet包“rda.SocketsForPCL”

我在Windows应用程序项目中引用了portable项目。在可移植项目中尝试创建TcpSocketClient时,它会引发异常。结果表明,Windows应用程序中未引用的NuGet包导致了此异常

因此,将NuGet引用添加到Windows应用程序项目解决了这个问题