1

我创建了一些代码来将 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 类型之外,我已经尝试了所有方法。

4

1 回答 1

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))
于 2011-04-08T11:59:59.997 回答