У меня есть MSMQ, который получает сообщения формата XML из разных источников. У меня есть конечная точка WCF (с использованием MsmqIntegrationBinding), которую я хочу получить. Я определил следующее:Использовать WCF для получения любого XML-сообщения из очереди MSMQ?
[ServiceContract(Namespace = "http://TestApp.MSMQService", ProtectionLevel = ProtectionLevel.None)]
[ServiceKnownType(typeof(String))]
public interface IMsmqReceiverService
{
[OperationContract(IsOneWay = true, Action = "*")]
void SubmitQueueMessage(MsmqMessage<String> msg);
}
Надеясь, что бы получить любое сообщение XML, однако он только принимает сообщения отформатированные:
<?xml version="1.0">
<string>message</string>
По разным причинам мы не знаем, и не хотят знать , схемы XML-сообщения, получая его в String, было бы достаточно. Как определить конечную точку, которая получает XML-сообщения с любыми узлами, которые поступают в очередь независимо от схемы, используемой в сообщении?
Кроме того, учитывая буфер String, содержащий XML-сообщение, как его можно поместить на MSMQ с помощью System.Messaging.MessageQueue.Send без его обертывания в дополнительный xml?
Спасибо, Джон, похоже, получил его. Я не хочу манипулировать XML, даже не хочу знать схему, мне просто нужно вытащить ее из очереди и отправить ее, поэтому я подумал, что могу получить ее как строку и избежать десериализации Это. Это должно быть выполнено. Еще раз спасибо! –