Windows Message Queue aracılığıyla C# uygulamasından eski bir uygulama ile iletişim kurmam gerekiyor.System.Messaging.MessageQueue ürünümün dizelerimi XML'de sarmamasını nasıl engellerim?
Eski uygulama, belirli bir özel sıradaki düz dizeli iletiler olmasını bekler, ancak System.Messaging.MessageQueue mesajımı XML'de sarmalamayı durduramıyor gibi görünmüyor!
Ben test olduğum kod çok basit:
MessageQueue myQueue = new MessageQueue(@".\Private$\tolegacy");
Message msg = new Message("My Test String");
myQueue.Send(msg);
sorun mesajı olmanın XML seri hale getirilmiş ve aynı kuyrukta görünür olmasıdır: Yapamam
<?xml version="1.0"?><string>My Test String</string>
Eski uygulamanın davranışını değiştirdiğimde, System.Messaging.MessageQueue mesajımı XML olarak biçimlendirmekten vazgeçmem gerekiyor.
Herkes yardımcı olabilir mi?
Doğrudan BodyStream'e çalıştım, teşekkürler. İlk başta denedim en kolay değişiklik gibi görünüyordu :) – Damovisa
Birkaç kendim yazdım ve gerçekten iyi çalışıyorlar. Endişelenmeniz gereken tek şey, vücut tipini anlayan gönderici ve alıcıdır. –
Benzer bir sorun yaşıyoruz. Sıra yazabilir/yazabilir ve mesajı geri alabiliriz. Fakat satıcı sıraya girdiğinde, mesajımızın etrafına sarılı ekstra şeyleri görür. Hiç ambalajsız basit bir dize nasıl yazabiliriz? BinaryFormatter bile dizenin başında bir grup bayt ekledi. – NealWalters