The problem described in the link below (WCF 5.0 & DevArt provider) seems to be also true for the Firebird .NET Provider:
However I've tried the 5.1.0-pre release and still get the ArumentNullException: Value cannot be null. Parameter name: value.
Besides of that the behaviour is exactly the same as described. It did work in the WCF 5.0 CTP, though.
Can anyone confirm that this is a Bug in WCF 5.0 RC or the Firebird .NET Provider? Is there a workaround, or do I have to downgrade to the CTP?
This is the call stack:
Microsoft.Data.Services.dll!System.Data.Services.WebUtil.CheckArgumentNull<string>(string alue, string parameterName) + 0x34 bytes
Microsoft.Data.Services.dll!System.Data.Services.Internal.ExpandedWrapper<Mdv.AppGuard.Central.Data.ServerGroup>.ReferenceDescription.set(string value) + 0x33 bytes
[Lightweight Function]
System.Data.Entity.dll!System.Data.Common.Internal.Materialization.Coordinator<System.Data.Services.Internal.ExpandedWrapper<Mdv.AppGuard.Central.Data.ServerGroup,System.Collections.Generic.IEnumerable<Mdv.AppGuard.Central.Data.Server>>>.ReadNextElement(System.Data.Common.Internal.Materialization.Shaper shaper) + 0x41 bytes
System.Data.Entity.dll!System.Data.Common.Internal.Materialization.Shaper<System.Data.Services.Internal.ExpandedWrapper<Mdv.AppGuard.Central.Data.ServerGroup,System.Collections.Generic.IEnumerable<Mdv.AppGuard.Central.Data.Server>>>.RowNestedResultEnumerator.MoveNext() + 0xec bytes
System.Data.Entity.dll!System.Data.Common.Internal.Materialization.Shaper<System.Data.Services.Internal.ExpandedWrapper<Mdv.AppGuard.Central.Data.ServerGroup,System.Collections.Generic.IEnumerable<Mdv.AppGuard.Central.Data.Server>>>.ObjectQueryNestedEnumerator.TryReadToNextElement() + 0x11 bytes
System.Data.Entity.dll!System.Data.Common.Internal.Materialization.Shaper<System.Data.Services.Internal.ExpandedWrapper<Mdv.AppGuard.Central.Data.ServerGroup,System.Collections.Generic.IEnumerable<Mdv.AppGuard.Central.Data.Server>>>.ObjectQueryNestedEnumerator.MoveNext() + 0x3a bytes
Microsoft.Data.Services.dll!System.Data.Services.Providers.BasicExpandProvider.ExpandedEnumerator<System.Data.Services.Internal.ExpandedWrapper<Mdv.AppGuard.Central.Data.ServerGroup,System.Collections.Generic.IEnumerable<Mdv.AppGuard.Central.Data.Server>>>.MoveNext() + 0x23 bytes
Microsoft.Data.Services.dll!System.Data.Services.DataService<Mdv.AppGuard.Central.Data.SetupContext>.SerializeResponseBody(System.Data.Services.RequestDescription description, System.Data.Services.IDataService dataService, Microsoft.Data.OData.IODataResponseMessage responseMessage) + 0x246 bytes
Microsoft.Data.Services.dll!System.Data.Services.DataService<Mdv.AppGuard.Central.Data.SetupContext>.HandleNonBatchRequest(System.Data.Services.RequestDescription description) + 0x1d8 bytes
Microsoft.Data.Services.dll!System.Data.Services.DataService<Mdv.AppGuard.Central.Data.SetupContext>.HandleRequest() + 0x13e bytes
Microsoft.Data.Services.dll!System.Data.Services.DataService<Mdv.AppGuard.Central.Data.SetupContext>.ProcessRequestForMessage(System.IO.Stream messageBody) + 0xe3 bytes
[Lightweight Function]
System.ServiceModel.dll!System.ServiceModel.Dispatcher.SyncMethodInvoker.Invoke(object instance, object[] inputs, out object[] outputs) + 0x8c7 bytes
System.ServiceModel.dll!System.ServiceModel.Dispatcher.DispatchOperationRuntime.InvokeBegin(ref System.ServiceModel.Dispatcher.MessageRpc rpc) + 0x243 bytes
System.ServiceModel.dll!System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage5(ref System.ServiceModel.Dispatcher.MessageRpc rpc) + 0x9f bytes
System.ServiceModel.dll!System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage41(ref System.ServiceModel.Dispatcher.MessageRpc rpc) + 0xa2 bytes
System.ServiceModel.dll!System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage4(ref System.ServiceModel.Dispatcher.MessageRpc rpc) + 0xd9 bytes
System.ServiceModel.dll!System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage31(ref System.ServiceModel.Dispatcher.MessageRpc rpc) + 0x102 bytes
System.ServiceModel.dll!System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage3(ref System.ServiceModel.Dispatcher.MessageRpc rpc) + 0x99 bytes
System.ServiceModel.dll!System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage2(ref System.ServiceModel.Dispatcher.MessageRpc rpc) + 0x96 bytes
System.ServiceModel.dll!System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage11(ref System.ServiceModel.Dispatcher.MessageRpc rpc) + 0x8e4 bytes
System.ServiceModel.dll!System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage1(ref System.ServiceModel.Dispatcher.MessageRpc rpc) + 0x63 bytes
System.ServiceModel.dll!System.ServiceModel.Dispatcher.MessageRpc.Process(bool isOperationContextSet) + 0x122 bytes
System.ServiceModel.dll!System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.Dispatch(ref System.ServiceModel.Dispatcher.MessageRpc rpc, bool isOperationContextSet) + 0x49 bytes
System.ServiceModel.dll!System.ServiceModel.Dispatcher.ChannelHandler.DispatchAndReleasePump(System.ServiceModel.Channels.RequestContext request, bool cleanThread, System.ServiceModel.OperationContext currentOperationContext) + 0x5d4 bytes
System.ServiceModel.dll!System.ServiceModel.Dispatcher.ChannelHandler.HandleRequest(System.ServiceModel.Channels.RequestContext request, System.ServiceModel.OperationContext currentOperationContext) + 0x226 bytes
System.ServiceModel.dll!System.ServiceModel.Dispatcher.ChannelHandler.AsyncMessagePump(System.IAsyncResult result) + 0x77 bytes
System.ServiceModel.dll!System.ServiceModel.Dispatcher.ChannelHandler.OnAsyncReceiveComplete(System.IAsyncResult result) + 0x6a bytes
System.Runtime.DurableInstancing.dll!System.Runtime.Fx.AsyncThunk.UnhandledExceptionFrame(System.IAsyncResult result) + 0x32 bytes
System.Runtime.DurableInstancing.dll!System.Runtime.AsyncResult.Complete(bool completedSynchronously) + 0xfd bytes
System.Runtime.DurableInstancing.dll!System.Runtime.InputQueue<System.ServiceModel.Channels.RequestContext>.AsyncQueueReader.Set(System.Runtime.InputQueue<System.ServiceModel.Channels.RequestContext>.Item item) + 0x44 bytes
System.Runtime.DurableInstancing.dll!System.Runtime.InputQueue<System.ServiceModel.Channels.RequestContext>.EnqueueAndDispatch(System.Runtime.InputQueue<System.ServiceModel.Channels.RequestContext>.Item item, bool canDispatchOnThisThread) + 0x1aa bytes
System.Runtime.DurableInstancing.dll!System.Runtime.InputQueue<System.ServiceModel.Channels.RequestContext>.EnqueueAndDispatch(System.ServiceModel.Channels.RequestContext item, System.Action dequeuedCallback, bool canDispatchOnThisThread) + 0x5e bytes
System.ServiceModel.dll!System.ServiceModel.Channels.InputQueueChannel<System.ServiceModel.Channels.RequestContext>.EnqueueAndDispatch(System.ServiceModel.Channels.RequestContext item, System.Action dequeuedCallback, bool canDispatchOnThisThread) + 0x46 bytes
System.ServiceModel.dll!System.ServiceModel.Channels.SingletonChannelAcceptor<System.ServiceModel.Channels.IReplyChannel,System.ServiceModel.Channels.ReplyChannel,System.ServiceModel.Channels.RequestContext>.Enqueue(System.ServiceModel.Channels.RequestContext item, System.Action dequeuedCallback, bool canDispatchOnThisThread) + 0x68 bytes
System.ServiceModel.dll!System.ServiceModel.Channels.SingletonChannelAcceptor<System.ServiceModel.Channels.IReplyChannel,System.ServiceModel.Channels.ReplyChannel,System.ServiceModel.Channels.RequestContext>.Enqueue(System.ServiceModel.Channels.RequestContext item, System.Action dequeuedCallback) + 0x2b bytes
System.ServiceModel.dll!System.ServiceModel.Channels.HttpChannelListener.HttpContextReceived(System.ServiceModel.Channels.HttpRequestContext context, System.Action callback) + 0x352 bytes
System.ServiceModel.dll!System.ServiceModel.Channels.SharedHttpTransportManager.OnGetContextCore(System.IAsyncResult result) + 0x400 bytes
System.ServiceModel.dll!System.ServiceModel.Channels.SharedHttpTransportManager.OnGetContext(System.IAsyncResult result) + 0x3d bytes
System.Runtime.DurableInstancing.dll!System.Runtime.Fx.AsyncThunk.UnhandledExceptionFrame(System.IAsyncResult result) + 0x32 bytes
System.dll!System.Net.LazyAsyncResult.Complete(System.IntPtr userToken) + 0x6c bytes
System.dll!System.Net.LazyAsyncResult.ProtectedInvokeCallback(object result, System.IntPtr userToken) + 0xbb bytes
System.dll!System.Net.ListenerAsyncResult.WaitCallback(uint errorCode, uint numBytes, System.Threading.NativeOverlapped* nativeOverlapped) + 0x1f5 bytes
mscorlib.dll!System.Threading._IOCompletionCallback.PerformIOCompletionCallback(uint errorCode, uint numBytes, System.Threading.NativeOverlapped* pOVERLAP) + 0x74 bytes