C# 通过AJAX从C语言中的服务器返回数据

C# 通过AJAX从C语言中的服务器返回数据,c#,jquery,ajax,C#,Jquery,Ajax,我使用AJAX调用来显示基于用C编写的某些逻辑的成功或失败的信息。现在我需要从服务器返回额外的数据并显示它。我需要的数据包含在雇主和机构变量中。如何在返回Json语句中返回该数据以及成功 的士司机 { var employers=\u EmployeerRepository.GetByTaxIdtaxId.ToList; var agencies=\u EmployeerRepository.GetByTaxIdtaxId.Selecte=>e.GeneralAgency.ToArray; 返回

我使用AJAX调用来显示基于用C编写的某些逻辑的成功或失败的信息。现在我需要从服务器返回额外的数据并显示它。我需要的数据包含在雇主和机构变量中。如何在返回Json语句中返回该数据以及成功

的士司机 { var employers=\u EmployeerRepository.GetByTaxIdtaxId.ToList; var agencies=\u EmployeerRepository.GetByTaxIdtaxId.Selecte=>e.GeneralAgency.ToArray; 返回Jsonnew{success=true},JsonRequestBehavior.AllowGet; } 返回Jsonnew{success=false,error=error},JsonRequestBehavior.AllowGet; 您需要将雇主和机构变量添加到提供给Json的匿名类型中,如下所示:

if (taxIdExists)
{
    var employers = _employerRepository.GetByTaxId(taxId).ToList();
    var agencies = _employerRepository.GetByTaxId(taxId).Select(e => e.GeneralAgency).ToArray();
    return Json(new { success = true, employers, agencies }, JsonRequestBehavior.AllowGet);
}
从那里,您可以访问$.ajax调用的成功处理程序中存储在这些属性中的数组:


它们将是数组,因此您需要遍历它们以提取所需信息。

将雇主和机构变量添加到您提供给Json响应的匿名类型中。然后,您可以访问它们在JavaScript的数据变量中公开的属性/对象/数组。因为您没有向我们展示这些类的实际外观,所以不可能给您提供比这更具体的内容?对其他的也做同样的事情。看起来怎么样?像这样的?返回Jsonnew{success=true,employers=employers,agencies=agencies},JsonRequestBehavior.AllowGet;这是正确的。我为您添加了一个带有示例的答案。在我将这些变量添加到匿名类型后,我进入Ajax请求的错误设置。您得到的错误是什么?你可以设置一个断点来找到它,或者在控制台中检查请求的状态。我设置了一个断点,它在“error:function response”中出现。我如何判断错误是什么?使用控制台的网络选项卡,或者在你的C代码中设置断点以单步执行。啊,序列化雇主对象时检测到循环引用
if (taxIdExists)
{
    var employers = _employerRepository.GetByTaxId(taxId).ToList();
    var agencies = _employerRepository.GetByTaxId(taxId).Select(e => e.GeneralAgency).ToArray();
    return Json(new { success = true, employers, agencies }, JsonRequestBehavior.AllowGet);
}
success: function (data) {
    if (data.success) {
        console.log(data.employers);
        console.log(data.agencies);
    }
    else {
        // fail
    }
},