当我运行我的应用程序时,我只在IE 10中获得此500 Internal Server Error
,该应用程序向页面方法发出简单的Ajax请求。我已经在Chrome和Firefox中对它进行了测试,它在这些方面运行良好。请尽快提出任何相关建议。
我将粘贴下面的代码:
function GetProductId() {
$.ajax({
type: "POST",
url: "Default.aspx/GenerateQrCode",
data: "{'Products':" + JSON.stringify([{ ProductId: 1 }, { ProductId: 2 }]) + "}",
contentType: "application/json; charset=utf-8",
dataType: "json",
error: function (xhr, ajaxOptions, thrownError) {
alert(xhr.status);
alert(xhr.responseText);
alert(thrownError);
},
success: function (msg) {
var data = $.parseJSON(msg.d);
}
});
}
[WebMethod]
public static string GenerateQrCode(List<Product> Products)
{
List<string> images = new List<string>();
foreach(var product in Products)
{
string qrCodeLocation = (from pic in products
where pic.ProductId == product.ProductId
select pic.QrCode).FirstOrDefault().ToString();
images.Add(qrCodeLocation);
}
JavaScriptSerializer js = new JavaScriptSerializer();
return js.Serialize(images);
}
答案 0 :(得分:1)
是.Net framework的错误:
IE10未映射为IE浏览器,而ASP.NET则返回通用浏览器的JS代码。
将此元标记添加到母版页的顶部,然后重试:
<meta http-equiv="X-UA-Compatible" content="IE=9"/>