Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/asp.net-mvc-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net mvc 3 如何在MVC3中关闭请求验证?_Asp.net Mvc 3_Requestvalidationmode - Fatal编程技术网

Asp.net mvc 3 如何在MVC3中关闭请求验证?

Asp.net mvc 3 如何在MVC3中关闭请求验证?,asp.net-mvc-3,requestvalidationmode,Asp.net Mvc 3,Requestvalidationmode,我已经安装了MVC 3的RC1版本,并且正在为我的模型使用Entity Framework 4 注意:我在MVC2中工作得很好,但MVC3改变了它的工作方式 我已经阅读了以下文章,并能够获得下面的代码 这是我的EF4元数据模型 [MetadataType(typeof(ArticleMetaData))] partial class Article { } public class ArticleMetaData { [SkipRequestValidation()]

我已经安装了MVC 3的RC1版本,并且正在为我的模型使用Entity Framework 4

注意:我在MVC2中工作得很好,但MVC3改变了它的工作方式

我已经阅读了以下文章,并能够获得下面的代码

这是我的EF4元数据模型

[MetadataType(typeof(ArticleMetaData))]
partial class Article
{
}

public class ArticleMetaData
{
    [SkipRequestValidation()]
    public string Body { get; set; }
}
这是我的控制器动作的简化版本

[HttpPost]
[Authorize(Roles = "Admin")]
[ValidateInput(false)]
public ActionResult Edit(string id, FormCollection values)
{
    Article article;
    article = GetArticle(id);
    UpdateModel(article);
    if (ModelState.IsValid)
    {
        Repository.SaveChanges();
        return RedirectToAction("Article", new { id = article.Slug });
    }
    return View(article);
}

我做错了什么?是否有更好的模式供我遵循?

尝试删除
[ValidateInput(false)]
并将
FormCollection
更改为
文章


这样很好…

很有效,谢谢。请注意,我并没有从表单中传递对象的所有值。对于其他处于类似情况的人,我对原始代码所做的唯一更改是将Article作为唯一的参数。我仍然在从数据库加载文章,并在上面调用UpdateModel。