我正在尝试创建一个程序,该程序在收到包含要从中获取数据的电影名称的请求时从 OMDb API 加载 IMDB 数据。当我运行程序时,通过尝试从电影The Shawshank Redemption中获取数据来测试它,我得到了这个错误:
无法从程序集“System.Web,Version=4.0.0.0,Culture=neutral,PublicKeyToken=b03f5f7f11d50a3a”加载类型“System.Web.Util.Utf16StringValidator”。
using (WebClient wc = new WebClient())
{
var json = wc.DownloadString(url);
JavaScriptSerializer oJS = new JavaScriptSerializer();
ImdbEntity obj = new ImdbEntity();
obj = oJS.Deserialize<ImdbEntity>(json); // This is the line that causes the problem in debug.
if (obj.Response == "True")
{
string txtActor = obj.Actors;
string txtDirector = obj.Director;
string txtYear = obj.Year;
}
else
{
Console.WriteLine("Movie not found.");
}
}
(是的,我从另一个 StackOverflow 问题中获取代码,但我绝对是这方面的初学者。)
我的项目中引用了 System.Web.Extensions.dll (并且使用 System.Web.Script.Serialization的 using 语句)。