我在應用程序的某個部分開發了一個帶有ASP.net(C#,.Net Framework 4.0)的Web應用程序,我調用API來獲取一些信息。我注意到一些調用API都失敗了,我得到這個錯誤:當我檢查我看到這個堆棧跟蹤索引在調用WCF API時超出了數組範圍的邊界
Index was outside the bounds of the array.
:
at System.Collections.Generic.Dictionary2.Insert(TKey key, TValue value, Boolean add)
at System.Collections.Generic.Dictionary2.set_Item(TKey key, TValue value)
at Navitaire.Ncl.Validation.ValidationManager.getValidationAttributes(MemberInfo mi, Boolean& skip)
at Navitaire.Ncl.Validation.ValidationManager.validate(Object declaringObject, Object value, MemberInfo mi, List1 results)
at Navitaire.Ncl.Validation.ValidationManager.Validate(Object obj)
at Navitaire.Ncl.ServiceModel.ParameterValidationInspector.BeforeCall(String operationName, Object[] inputs)
at Navitaire.Ncl.ServiceModel.Remoting.BoilerplateSinkBase.InvokeBeforeCallInspectors(StateData stateData, RemotingMessage& message)
at Navitaire.Ncl.ServiceModel.Remoting.BoilerplateServerSink.ProcessMessage(IServerChannelSinkStacksinkStack, IMessage requestMsg, ITransportHeaders requestHeaders, Stream requestStream, IMessage& responseMsg, ITransportHeaders& responseHeaders, Stream& responseStream)
at System.Runtime.Remoting.Channels.BinaryServerFormatterSink.ProcessMessage(IServerChannelSinkStack sinkStack, IMessage requestMsg, ITransportHeaders requestHeaders, Stream requestStream, IMessage& responseMsg, ITransportHeaders& responseHeaders, Stream& responseStream)
我把一個破發點上捕獲異常部分,所以每次出現錯誤時,應用程序都會停止,我可以讀取異常。我注意到,如果在這一刻我再次調用API(將光標移到API調用行),它工作正常。所以這意味着我傳遞給API的參數沒有問題。
我試圖在三種不同的環境中運行完全不同的網絡和不同的互聯網連接的應用程序,但我仍然得到了同樣的錯誤。
你能請別人幫我解決這個案子嗎?
感謝
感謝您的回覆。不幸的是我沒有訪問API代碼,但它是一個私人API,我已經要求他們檢查他們的代碼。你認爲這可能是由於一些連接問題,從API返回的錯誤是不相關的? – Mehran