如何在c#中使用Newtonsoft.Json(Json.NET)序列化套接字类

时间:2016-05-16 09:54:00

标签: c# android json serialization xamarin

我在序列化包含Socket的类时遇到了问题: 我需要序列化的类:

public class ClientSocketClass : SocketClass
{
    private int port;
    private Socket clientSocket;
    public Socket ClientSocket { get { return clientSocket; } private set
        {
            clientSocket = value;
            //clientSocket.EnableBroadcast = false;
        } 
}

我尝试序列化一个Activity以通过Objet传递

的方式
Intent intent = new Intent(this, typeof(ChatWindow));
intent.PutExtra("Socket", JsonConvert.SerializeObject(ClientSocket));
this.StartActivity(intent);

问题似乎是ClientSocketClass中的Socket属性,或者更具体的是Socket属性中的EnableBroadcast属性。因为我在序列化对象时获得了一个Excepion:

Newtonsoft.Json.JsonSerializationException: Error getting value from 'EnableBroadcast' on 'System.Net.Sockets.Socket'.

EnableBroadcast不可用,因为它是TCP套接字。 有谁能告诉我如何解决这个问题?

提前致谢

0 个答案:

没有答案