我曾经使用 asmx 来处理来自页面的 ajax 调用,但我读到它是一个遗留产品,它与 MVC 应用程序不太兼容。现在也与 MVC 兼容的 asmx 的替代品是什么?
问问题
56 次
1 回答
1
使用控制器中的 Action 方法为您提供 Ajax 响应。您可以返回任何形式的数据,例如 HTML 标记(使用视图、Json、字符串。图像等...)
public ActionResult GetItems()
{
var items=dbContext.Items;
return Json(items,JsonRequestBehavior.AllowGet);
}
public ActionResult GetAnother()
{
return Content("I am just string from ajax");
}
您可以使用相同的操作结果为 ajax 请求和使用 Request.IsAjax 方法的普通请求返回 HTML 标记
public ActionResul Getcustomer(int id)
{
var customer=dbcontext.Customer.Find(id);
if(Request.IsAjax())
{
return View("PartialCustomerForm",customer);
}
return View("RegularCustomerForm",customer);
}
要从您的页面调用这些方法,您可以使用 jquery ajax
$.get("@Url.Action("GetItems","Customer")", { id: 3 },function(data){
//do whatever with the response. //alert(data);
});
于 2012-04-27T21:24:47.197 回答