0

以下链接(WCF 5.0 和 DevArt 提供程序)中描述的问题似乎也适用于 Firebird .NET 提供程序:

http://social.msdn.microsoft.com/Forums/en/adodotnetdataservices/thread/e74ea4d1-a262-4326-8529-c146a3acfb6d

但是我已经尝试了 5.1.0-pre 版本并且仍然得到 ArumentNullException: Value cannot be null。参数名称:值。

除此之外,行为与描述的完全相同。不过,它确实在 WCF 5.0 CTP 中工作。

谁能确认这是 WCF 5.0 RC 或 Firebird .NET 提供程序中的错误?是否有解决方法,或者我必须降级到 CTP?

这是调用堆栈:

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    
4

1 回答 1

0

5.1.0-rc build 也修复了 Firebird 提供者的问题。正如 Vitek Karas 提到的,我忘记从 GAC 中删除 5.0 RTM。因此,我从未真正尝试过 5.1.0-rc。

于 2012-05-09T07:41:29.060 回答