I have a solution which uses a Service Endpoint to the Azure Queue.
At the other end I have a Windows Service which picks up the message and processes it.
For some reason I can no longer set the contract to Queue. I can only set it to PersistentQueue.
The latter allows the endpoint to work by the windows service spawns an XML error (I am assuming at this stage that this is because the message is in a different format and I would need to change the service code?).
Can anyone explain this. Can I get the Queue Contract to work. It would be preferable to using PersistentQueue which I know nothing about.
My error is:
===
Queue contract no longer supported
Details:
Plugin Trace:
[Microsoft.Crm.ServiceBus: Microsoft.Crm.ServiceBus.ServiceBusCheckPlugin]
[eeb706f2-b05f-4d8a-a71b-4ef680f22c5a: Verify Service Endpoint Authentication]
Error Message:
Unhandled Exception: System.ServiceModel.FaultException`1[[Microsoft.Xrm.Sdk.OrganizationServiceFault, Microsoft.Xrm.Sdk, Version=7.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35]]: Queue contract no longer supportedDetail:
<OrganizationServiceFault xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.microsoft.com/xrm/2011/Contracts">
<ErrorCode>-2147220989</ErrorCode>
<ErrorDetails xmlns:d2p1="http://schemas.datacontract.org/2004/07/System.Collections.Generic" />
<Message>Queue contract no longer supported</Message>
<Timestamp>2016-06-13T08:03:10.7799819Z</Timestamp>
<InnerFault>
<ErrorCode>-2147220970</ErrorCode>
<ErrorDetails xmlns:d3p1="http://schemas.datacontract.org/2004/07/System.Collections.Generic" />
<Message>System.ArgumentException: Queue contract no longer supported
Parameter name: endpointInfo.Contract</Message>
<Timestamp>2016-06-13T08:03:10.7799819Z</Timestamp>
<InnerFault i:nil="true" />
<TraceText i:nil="true" />
</InnerFault>
<TraceText>[Microsoft.Crm.ServiceBus: Microsoft.Crm.ServiceBus.ServiceBusCheckPlugin]
[eeb706f2-b05f-4d8a-a71b-4ef680f22c5a: Verify Service Endpoint Authentication]
</TraceText>
</OrganizationServiceFault>
at Microsoft.Crm.ServiceBus.RouterService.ExecuteInternal(RemoteExecutionContext context, ServiceBusEndpointInformation endpointInfo)
at Microsoft.Crm.ServiceBus.ServiceBusService.Dispatch(ServiceBusEndpointInformation endpointInfo, IExecutionContext context)
at Microsoft.Crm.ServiceBus.ServiceBusService.PostInternal(String assemblyName, EntityReference serviceEndpoint, Boolean validateOnly, IExecutionContext context)
at Microsoft.Crm.ServiceBus.ServiceBusCheckPlugin.Execute(IServiceProvider serviceProvider)
at Microsoft.Crm.Asynchronous.V5ProxyPlugin.Execute(IServiceProvider serviceProvider)
at Microsoft.Crm.Asynchronous.EventOperation.InvokePlugin(AsyncExecutionContext context, IPlugin pluginInstance)