Hej! Nej, den klagar på att den inte kan hitta din Okej, tack för svaret men jag förstod inte riktigt. Du måste ha SAMMA klass på både klient och server. Du får alltså göra en separat DLL, som innehåller klassen. Sen sätter du en referens till den på klienten OCH på servern. Då finns din dll på båda ställen och det funkar bra. okej, ska prova det.Hur serialiserar man objekt och skickar dem över tcp/ip
Jag har en server och en klient. De innehåller samma(lika) klasser men all data finns lagrad på servern. Jag vill kunna skicka över olika objekt till klienten via tcp/ip. När klienten sedan har arbetat klart med dem så skickar den över det till servern igen som spar det.
Kan någon visa ett fungerande exempel där ett objekt;
1. serialiseras med binaryformatter helst
2. skickas över tcp/ip, t.ex. tcpclient
3. tas emot via tcp/ip
4. deserialiseras till ett objekt igen
Jag får olika fel hela tiden. Just nu när jag försöker deserialize ett skickat objekt i servern så klagar den på att objektet inte är av assembly Klient (se nedan). Någon som har några tips/förslag/exempel?
Med vänlig hälsning, Per.
Felmeddelande:
"System.Runtime.Serialization.SerializationException: Cannot find the assembly Klient, Version=1.0.1537.24057, Culture=neutral, PublicKeyToken=null.
at System.Runtime.Serialization.Formatters.Binary.BinaryAssemblyInfo.GetAssembly()
at System.Runtime.Serialization.Formatters.Binary.ObjectReader.GetType(BinaryAssemblyInfo assemblyInfo, String name)
at System.Runtime.Serialization.Formatters.Binary.__BinaryParser.ReadObjectWithMap(BinaryObjectWithMap record)
at System.Runtime.Serialization.Formatters.Binary.__BinaryParser.ReadObjectWithMap(BinaryHeaderEnum binaryHeaderEnum)
at System.Runtime.Serialization.Formatters.Binary.__BinaryParser.Run()
at System.Runtime.Serialization.Formatters.Binary.ObjectReader.Deserialize(HeaderHandler handler, __BinaryParser serParser, Boolean fCheck, IMethodCallMessage methodCallMessage)
at System.Runtime.Serialization.Formatters.Binary.BinaryFormatter.Deserialize(Stream serializationStream, HeaderHandler handler, Boolean fCheck, IMethodCallMessage methodCallMessage)
at System.Runtime.Serialization.Formatters.Binary.BinaryFormatter.Deserialize(Stream serializationStream, HeaderHandler handler)
at System.Runtime.Serialization.Formatters.Binary.BinaryFormatter.Deserialize(Stream serializationStream)"Sv: Hur serialiserar man objekt och skickar dem över tcp/ip
assembly "Klient" på servern. Du måste lägga den (DLL-filen) där.
OlaSv: Hur serialiserar man objekt och skickar dem över tcp/ip
Jag har ingen DLL-fil utan 2 separata program, det ena kallat Klient och
den andra Server. Så när servern ska göra om en memorystream till ett
objekt, deserialize, så får jag förra felmeddelandet. Kan du förklara mer
i detalj hur jag ska göra vore jag mycket tacksam.
Med vänlig hälsning, Per.Sv: Hur serialiserar man objekt och skickar dem över tcp/ip
/mickeSv: Hur serialiserar man objekt och skickar dem över tcp/ip
Tackar för hjälpen!
//Pär