我正在使用Google Chrome进行工作。
关注https://stackoverflow.com/a/26003200/7204173我尝试从webmethod返回异常。但它没有在console.log中显示任何内容。我唯一得到的是从网络标签下面的一般错误消息:
“更新条目时发生错误。有关详细信息,请参阅内部异常。”
所以我在下面尝试了(ps:我正在使用实体框架DbContext向DML发送数据库):
public string AddData(myEntity e)
{
using(var context = new MyEntityModel())
{
try
{
context.myEntity.Add(e);
context.SaveChanges();
return "success";
}catch(Exception ex)
{
return "error : " + ex.Message;
}
}
}
现在我的Javascript代码:
function AddArticle()
{
var e {id : "1", value : "test"};
var DTO = { 'e': e };
$.ajax({
type: "POST",
contentType: "application/json; charset=utf-8",
dataType: "json",
data: JSON.stringify(DTO),
url: "MyPage.aspx/AddData",
success: function (response) {
console.log(response);
},
error: function (xhr, status, error) {
var exception = JSON.parse(xhr.responseText);
alert(exception.Message);
console.log(exception.Message);
}
});
}
所以让我说我在调用输入按钮后面的javascript函数。由于它是一个数据库,var e {id : "1", value : "test"};
无法添加两次,因为id
是主键。我在console.log中一无所获;警报框甚至没有被触发。但是当它成功时,console.log会按预期显示success
。
我想知道在哪里寻找我的错误?
答案 0 :(得分:1)
您是否尝试记录其他错误args?
console.log(xhr);
console.log(status);
console.log(error);
您应该能够在控制台中手动解析日志,并找到所需变量的正确路径。
<强>更新强>
console.log(error);
是OP