में कनवर्ट करें, इसलिए मेरे पास एक सर्वर और क्लाइंट है जो विभिन्न डेटा को वापस और चौथाई संवाद करता है। शुरुआत में मेरे पास एक जटिल विधि थी जो बाइट सरणी के माध्यम से चली गई और इसके सभी चर और तारों को एक-एक करके परिवर्तित कर दिया, जिसे वे होना चाहते थे। मुझे लगता है मैं एक वस्तु में चर रख सकते हैं और यह एक बाइट सरणी में बदलने काकिसी ऑब्जेक्ट को सी # में बाइट सरणी में कनवर्ट करें, इसे सॉकेट पर भेजें, फिर ऑब्जेक्ट
private static byte[] ObjectToByteArray2(Object obj)
{
if (obj == null)
return null;
BinaryFormatter bf = new BinaryFormatter();
MemoryStream ms = new MemoryStream();
bf.Serialize(ms, obj);
return ms.ToArray();
}
का उपयोग कर और
private static Object ByteArrayToObject(byte[] arrBytes)
{
MemoryStream memStream = new MemoryStream();
BinaryFormatter binForm = new BinaryFormatter();
memStream.Write(arrBytes, 0, arrBytes.Length);
memStream.Seek(0, SeekOrigin.Begin);
Object obj = (Object)binForm.Deserialize(memStream);
return obj;
}
समस्या यह है, एक बार मैं इस बाइट सरणी पार भेजने का उपयोग करते हुए इसे वापस परिवर्तित कर सकते हैं सीखा किसी अन्य एप्लिकेशन के लिए नेटवर्क, मैं इसे वापस बदलने के लिए इस विधि का उपयोग नहीं कर सकता, मुझे त्रुटि मिलती है "असेंबली ढूंढने में असमर्थ 'test1s, संस्करण = 1.0.0.0, संस्कृति = तटस्थ, PublicKeyToken = null'। test1s केवल छोटे सर्वर प्रोग्राम का नाम है जिसे मैंने इसके साथ खेलने के लिए बनाया है। जाहिर है कि एप्लिकेशन को इस सरणी को किसी ऑब्जेक्ट में बदलने के लिए कुछ अतिरिक्त जानकारी चाहिए, तो क्या मैं ऐसा कर सकता हूं, या क्या मैं समस्या के बारे में गलत हूं?
जो मैं यहां पूरा करना चाहता हूं उसके पास कुछ भी नहीं है लेकिन कई चर और तार हैं, इसे बाइट सरणी में परिवर्तित करें, इसे किसी अन्य एप्लिकेशन पर भेजें, और उसे ऑब्जेक्ट में वापस परिवर्तित करें। इस तरह मुझे अपने सभी चर और तारों को निकालने के लिए बाइट सरणी के साथ खेलना नहीं है।
धन्यवाद
यदि मैं आप थे, तो मैं इसे समझने के लिए एक डीबगर का उपयोग करूंगा। जब तक, आप मानते हैं कि एक डीबगर सभी बुराई की मां है। यदि आप नहीं जानते कि मेरा क्या मतलब है इसका भार प्राप्त करें: http://stackoverflow.com/questions/602138/is-a-debugger-the-other-of-all-evil – YWE