3
我有一個程序調用一個休息服務並獲取一個字符串數組。當我嘗試讀取字符串數組時,我得到一個異常意外的文件結束。如果我有服務返回一個字符串,它只包含數組的第一項。我錯過了關於ReadAsDataContract<>()
是否導致此異常?ReadAsDataContract <String[]> - 意外的文件結尾
var returnElement = response.Content.ReadAsDataContract<string[]>();
唯一的例外是XMLException:文件意外結束。
堆棧trace-
at System.Xml.EncodingStreamWrapper.ReadBOMEncoding(Boolean notOutOfBand)
at System.Xml.EncodingStreamWrapper..ctor(Stream stream, Encoding encoding)
at System.Xml.XmlUTF8TextReader.SetInput(Stream stream, Encoding encoding, XmlDictionaryReaderQuotas quotas, OnXmlDictionaryReaderClose onClose)
at System.Runtime.Serialization.XmlObjectSerializer.ReadObject(Stream stream)
at System.Runtime.Serialization.DataContractContentExtensions.ReadAsDataContract[T](HttpContent content, DataContractSerializer serializer)
at System.Runtime.Serialization.DataContractContentExtensions.ReadAsDataContract[T](HttpContent content)
at RestConsumption.Program.GetDevices() in **********\documents\visual studio 2010\Projects\RestPractice\RestConsumption\Program.cs:line 55
at RestConsumption.Program.Main(String[] args) in *********\documents\visual studio 2010\Projects\RestPractice\RestConsumption\Program.cs:line 26
at System.AppDomain._nExecuteAssembly(RuntimeAssembly assembly, String[] args)
at System.AppDomain.ExecuteAssembly(String assemblyFile, Evidence assemblySecurity, String[] args)
at Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssembly()
at System.Threading.ThreadHelper.ThreadStart_Context(Object state)
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean ignoreSyncCtx)
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
at System.Threading.ThreadHelper.ThreadStart()
我無法顯示我的完整代碼,但我可以告訴你我是如何使用ReadAsDataContract。 – SmashCode 2012-03-09 20:36:31
響應json,xml是什麼格式? – 2012-03-09 20:37:53
是否確定Web服務響應的大小不超過您在Web配置中設置的最大大小限制 – labroo 2012-03-09 20:38:56