我正在使用ASP.NET MVC (我对asp.net和asp.net mvc类型的项目都很陌生,但我很努力学习)。
我已经设置了一个控制器的MVC,以便它运行一个C#.net方法;
。
它通过请求带有参数的url从javascript调用。但是我现在需要的是C#部件从javascript中读取两个整数变量。做这件事的最好方法是什么,有没有人有我可以看的好例子/代码?
这会非常有帮助的。特别是如果有使用jquery / asp.net (mvc)的智能方法的话。
发布于 2010-03-06 23:53:24
在您的控制器中:
public JsonResult GetPony(string Name, string Color) {
return Json(new Pony(Name, Color), JsonRequestBehavior.AllowGet);
}
在您的javascript中:
$.get("/Controller/GetPony", {
Name: "foo",
Color: "bar"
});
jQuery将负责将对象中的内容移动到查询字符串中,而MVC将负责将内容从查询字符串移动到对操作的调用中。
发布于 2010-03-06 23:53:39
要做到这一点,您需要将其作为ajax请求的一部分发送。C#无法读取您的javascript,它只能读取请求参数。
如果您使用的是jQuery,请求可能如下所示:
$.ajax({
url:"/products/detail",
type: "get", (or post, etc)
dataType: "json",
data: {productId: 55, culture:"en-US"},
success: your_success_callback,
error: function(e) { alert("An error occurred! " + e); }
});
有趣的行是data
设置。它将将数据序列化为name=val&name=val
,并将其发送到服务器。如果type
设置为GET,那么它将被附加到URL上的查询字符串中。如果它被设置为POST,那么它将被嵌入到请求中。
服务器部分不关心哪个。它可以这样取回它:
public class ProductsController : Controller
{
public ActionResult Detail(int productId, string culture)
{
//your logic here
}
}
https://stackoverflow.com/questions/2394542
复制相似问题