我已经创建了一些代码来将JSON HttpWebResponse分解为XmlDictionaryReader:
Dim response As HttpWebResponse = request.GetResponse()
Dim xmlQuotas As New Global.System.Xml.XmlDictionaryReaderQuotas
Dim yelpJson As System.Xml.XmlDictionaryReader = System.Runtime.Serialization.Json.JsonReaderWriterFactory.CreateJsonReader(response.GetResponseStream(), xmlQuotas)
我的本地计算机以及另一台远程服务器上的一切都运行良好,但是,当我将其移动到我的GoDaddy主机帐户时,我收到以下错误:
Compiler Error Message: BC30002: Type 'System.Xml.XmlDictionaryReaderQuotas' is not defined.
这似乎是一种标准类型,所以我不知道为什么它不会被定义,它似乎在我的本地机器和另一台远程服务器上都没有问题。
有人知道吗: a)什么会导致这个或 b)我如何解决它在我的GoDaddy服务器上工作?
我已经尝试了重新创建整个XmlDictionaryReaderQuotas类型的所有内容。
答案 0 :(得分:0)
从来没有想过这个,所以我继续前进,摆脱了XmlDictionaryReader和XmlDictionaryReaderQuotas。相反,我使用JavaScriptSerializer将所有内容反序列化为Dictionary(Of String,Object)类型,然后使用一些自定义函数对其进行爬网以返回我需要的任何值。
Dim yelpReader As IO.StreamReader = New IO.StreamReader(yelpResponse.GetResponseStream())
Dim JsonSerializer As New Web.Script.Serialization.JavaScriptSerializer()
Dim JsonData As Dictionary(Of String, Object) = CType(JsonSerializer.DeserializeObject(yelpReader.ReadToEnd), Dictionary(Of String, Object))