C# 不从C控制器操作返回AJAX成功
不从C控制器操作返回AJAX成功 我已经尝试了许多可用的选项,但仍然无法将数据返回到AJAX成功中,原因是什么?C# 不从C控制器操作返回AJAX成功,c#,jquery,ajax,C#,Jquery,Ajax,不从C控制器操作返回AJAX成功 我已经尝试了许多可用的选项,但仍然无法将数据返回到AJAX成功中,原因是什么? 我想将列表列表从控制器的操作返回到AJAX调用的成功数据,我应该怎么做 请看下面的代码谢谢 AJAX请求 控制器动作 我还尝试在返回之前对其进行字符串化,它显示了以下错误 我用过 返回JsonConvert.serializeObjectListMR\u\t\u免疫 现在它给了我错误 检测到类型为的自引用循环 “系统.数据.实体.动态验证.作为预约”_305685F58BEE75BA
我想将列表列表从控制器的操作返回到AJAX调用的成功数据,我应该怎么做 请看下面的代码谢谢 AJAX请求 控制器动作 我还尝试在返回之前对其进行字符串化,它显示了以下错误 我用过 返回JsonConvert.serializeObjectListMR\u\t\u免疫 现在它给了我错误 检测到类型为的自引用循环 “系统.数据.实体.动态验证.作为预约”_305685F58BEE75BAC95975F9457412A0DE58BB59D3EDBD1155C7DB5E21A7BA66”。 路径 “[0]。erx_____患者。as____预约[0]。erx___城市。as___预约”
简单地看一下,您似乎可以将失败返回移动到else语句中,以保护它们不被触发,除非您的某个条件失败,而不是单独在外部浮动 是不是每次回电话都失败了?如果是这样,那可能就是原因
[HttpPost]
public JsonResult getmedi(int patient2)
{
if (patient2.ToString() != "")
{
string roster = objOrgCont.getmedi(patient2);
JavaScriptSerializer ser = new JavaScriptSerializer();
emr_t_Immunization erx = (emr_t_Immunization)ser.Deserialize(roster, typeof(emr_t_Immunization));
List<emr_t_Immunization> Listemr_t_Immunization = db.emr_t_Immunization.Where(Allemr_t_Immunization => Allemr_t_Immunization.Patient_Id == patient2).ToList();
///List<emr_t_Medical_History> Listemr_t_Medical_History2 = (from Allemr_t_Medical_History in db.emr_t_Medical_History where Allemr_t_Medical_History.Mr_No == Mr_No select Allemr_t_Medical_History).ToList();
if (erx != null)
{
//return Json(new { success = true, for_Date = erx.Med_Date, for_Name = erx.Name, for_Active = erx.Active, for_Resolved = erx.Resolved, for_Comments=erx.Comments });
return Json(new { Listemr_t_Immunization, JsonRequestBehavior.DenyGet });
} else
{
return Json(new { success = false });
}
} else
{
return Json(new { success = false });
}
}
编辑
将列表发送回您的请求中
此处的这一行需要更改:
List<emr_t_Immunization> Listemr_t_Immunization = db.emr_t_Immunization.Where(Allemr_t_Immunization => Allemr_t_Immunization.Patient_Id == patient2).ToList();
我不是100%确定erx是什么,但如果您正在检查是否有结果,请将其更改为
if (results.Any())
{
Response.StatusCode = (int) HttpStatusCode.Created;
return Json(new { results });
} else
{
Response.StatusCode = (int)HttpStatusCode.BadRequest;
return Json("Failed");
}
因此,所有代码都将显示:
[HttpPost]
public JsonResult getmedi(int patient2)
{
if (patient2.ToString() != "")
{
string roster = objOrgCont.getmedi(patient2);
JavaScriptSerializer ser = new JavaScriptSerializer();
emr_t_Immunization erx =(emr_t_Immunization)ser.Deserialize(roster, typeof(emr_t_Immunization));
var results = db.emr_t_Immunization.Where(Allemr_t_Immunization => Allemr_t_Immunization.Patient_Id == patient2).ToList()
/// You can make that query easier to read by having
/// var results = db.emr_t_Immunization.Where(a => a.Patient_Id == patient2).ToList()
if (results.Any())
{
Response.StatusCode = (int) HttpStatusCode.Created;
return Json(new { results });
} else
{
Response.StatusCode = (int)HttpStatusCode.BadRequest;
return Json("Failed");
}
} else
{
Response.StatusCode = (int)HttpStatusCode.BadRequest;
return Json("Failed");
}
}
你的意思是说每次出现错误回调时??我想返回列表ListMR\u t\u Immunization返回Jsonnew{ListMR\u t\u Immunization,JsonRequestBehavior.AllowGet};试试看你现在真正的问题是什么?更新你的原始帖子,使你想做的事情更有意义,我会尽力帮助你好的,我会更新,但我想将列表列表Mr_______________________________________________
List<emr_t_Immunization> Listemr_t_Immunization = db.emr_t_Immunization.Where(Allemr_t_Immunization => Allemr_t_Immunization.Patient_Id == patient2).ToList();
var results = db.emr_t_Immunization.Where(Allemr_t_Immunization => Allemr_t_Immunization.Patient_Id == patient2).ToList()
if (results.Any())
{
Response.StatusCode = (int) HttpStatusCode.Created;
return Json(new { results });
} else
{
Response.StatusCode = (int)HttpStatusCode.BadRequest;
return Json("Failed");
}
[HttpPost]
public JsonResult getmedi(int patient2)
{
if (patient2.ToString() != "")
{
string roster = objOrgCont.getmedi(patient2);
JavaScriptSerializer ser = new JavaScriptSerializer();
emr_t_Immunization erx =(emr_t_Immunization)ser.Deserialize(roster, typeof(emr_t_Immunization));
var results = db.emr_t_Immunization.Where(Allemr_t_Immunization => Allemr_t_Immunization.Patient_Id == patient2).ToList()
/// You can make that query easier to read by having
/// var results = db.emr_t_Immunization.Where(a => a.Patient_Id == patient2).ToList()
if (results.Any())
{
Response.StatusCode = (int) HttpStatusCode.Created;
return Json(new { results });
} else
{
Response.StatusCode = (int)HttpStatusCode.BadRequest;
return Json("Failed");
}
} else
{
Response.StatusCode = (int)HttpStatusCode.BadRequest;
return Json("Failed");
}
}