标签:
[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)
{
}
标签:
原文地址:http://www.cnblogs.com/zhian/p/5693451.html