クライアントとサーバーの2つのプロセスがあります。これは次のとおりです:これは私のクライアントプロセスです:-
[Serializable ]
public class retobj
{
public int a;
}
class client
{
static void Main(string[] args)
{
TcpClient client = new TcpClient();
client.Connect(new IPEndPoint(IPAddress.Parse("127.0.0.1"), 5005));
Console.WriteLine("Connected.");
retobj ob = new retobj();
ob.a = 90;
BinaryFormatter bf = new BinaryFormatter();
NetworkStream ns = client.GetStream();
bf.Serialize(ns, ob);
Console.WriteLine("Data sent.");
Console.ReadLine();
ns.Close();
client.Close();
}
}
そしてこれは私のサーバープロセスです:
[Serializable]
public class retobj
{
public int a;
}
class server
{
static void Main(string[] args)
{
TcpListener listener = new TcpListener(IPAddress.Any, 5005);
listener.Start();
Console.WriteLine("Server started.");
Socket client = listener.AcceptSocket();
Console.WriteLine("Accepted client {0}.\n", client.RemoteEndPoint);
List<string> l = null;
retobj j = null;
using (NetworkStream ns = new NetworkStream(client))
{
BinaryFormatter bf = new BinaryFormatter();
j = (retobj )bf.Deserialize(ns);
}
//if (l != null)
// foreach (var item in l)
// Console.WriteLine(item);
Console.WriteLine(j.a);
Console.ReadLine();
client.Close();
listener.Stop();
}
ただし、次のようなエラーが発生します。サーバープロセスのエラー:アセンブリ'ConsoleApplication45、Version = 1.0.0.0、Culture = neutral、PublicKeyToken=null'が見つかりません。