ASP.NET MVC如何将JSON对象从View传递到Controller作为参数

ASP.NET MVC如何将JSON对象从View传递到Controller作为参数,第1张

ASP.NET MVC如何将JSON对象从View传递到Controller作为参数

编辑:

随着MVC 3的到来,不再需要这种方法,因为它将自动处理-http:
//weblogs.asp.net/scottgu/archive/2010/07/27/introducing-asp-net-mvc-3
-preview-1.aspx


您可以使用以下ObjectFilter:

    public class ObjectFilter : ActionFilterAttribute {    public string Param { get; set; }    public Type RootType { get; set; }    public override void onActionExecuting(ActionExecutingContext filterContext) {        if ((filterContext.HttpContext.Request.ContentType ?? string.Empty).Contains("application/json")) { object o = new DataContractJsonSerializer(RootType).ReadObject(filterContext.HttpContext.Request.InputStream); filterContext.ActionParameters[Param] = o;        }    }}

然后可以将其应用于您的控制器方法,如下所示:

    [ObjectFilter(Param = "postdata", RootType = typeof(ObjectToSerializeTo))]    public JsonResult ControllerMethod(ObjectToSerializeTo postdata) { ... }

因此,基本上,如果帖子的内容类型是“ application / json”,则它将生效,并将值映射到您指定的类型的对象。



欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zaji/4940154.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-11-13
下一篇2022-11-13

发表评论

登录后才能评论

评论列表(0条)

    保存