首页 > Web开发 > 详细

asp.net mvc 提交model 接收不了

时间:2016-07-21 23:49:08      阅读:425      评论:0      收藏:0      [点我收藏+]

  [HttpPost]
        //[ValidateInput(false)]
        public ActionResult AddNews1(_54Young_News_Model.model.gou54contentall contentmodel, _54Young_News_Model.model.gou54user usermodel)
        {}

发现用一些特殊符号提交不了, 然后以为说前端问题,把model去掉就可以了。 后面觉得是因为有特殊符号影响到转model。

写了一个request转model,但还是报错。

 /// <summary>
        /// 请求的request的内容转换为model
        /// cza
        /// 2016-5-30 19:06:21
        /// </summary>
        /// <param name="context"></param>
        /// <returns></returns>
        public static T ConvertToModel()
        {
            HttpContext context=System.Web.HttpContext.Current;
            T t = new T();
            PropertyInfo[] propertys = t.GetType().GetProperties();
            foreach (PropertyInfo pi in propertys)
            {
                if (!pi.CanWrite)
                    continue;
                try
                {
                    object value = context.Request[pi.Name];
                    if (value != null && value != DBNull.Value)
                    {

                        if (value.ToString() != "")
                            pi.SetValue(t, Convert.ChangeType(value, pi.PropertyType), null);//这一步很重要,用于类型转换
                        else
                            pi.SetValue(t, value, null);

                    }
                }
                catch
                { }
            }

            return t;
        }

 

在网上查资料看到可以在web.config添加,但是觉得全局的太危险了。

<system.web> 
<pages validaterequest="false"/> 
</system.web> 

后看到那个可以在方法前面添加这个免验证的方法

 [HttpPost]
        [ValidateInput(false)]
        public ActionResult AddNews1(_54Young_News_Model.model.gou54contentall contentmodel, _54Young_News_Model.model.gou54user usermodel)
        {

     }

 

asp.net mvc 提交model 接收不了

原文:http://www.cnblogs.com/zhian/p/5693451.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!