在不使用模型的情况下执行验证asp.net mvc

时间:2009-09-18 09:05:30

标签: c# asp.net-mvc

如果我不使用模型,如何在mvc中进行验证?

我直接从控制器获取数据并显示它。

我该如何验证?大多数示例似乎都使用该模型进行验证。

3 个答案:

答案 0 :(得分:2)

虽然它被认为是违反MVC范式的,但从技术上讲,没有任何技术可以阻止您直接使用已发布的表单。

class TestController : Controller
{
    [AcceptVerbs (HttpVerbs.Post)]
    public ActionResult SomeAction (FormCollection form)
    {
        if (MyCustomValidation (form))
            SaveData ();

        RedirectToAction ("SomeAction");
    }
}

答案 1 :(得分:1)

我想您可能希望在代码中使用[AcceptVerbs(HttpVerbs.post)]:

class TestController : Controller
{
    [AcceptVerbs (HttpVerbs.Post)]
    public ActionResult SomeAction (FormCollection form)
    {
        if (MyCustomValidation (form))
            SaveData ();

        RedirectToAction ("SomeAction");
    }
}

答案 2 :(得分:0)

您可以使用this article所述的服务层,这样可以在保持错误处理的同时分离关注点,而不是依靠控制器为您完成所有操作。