如果我不使用模型,如何在mvc中进行验证?
我直接从控制器获取数据并显示它。
我该如何验证?大多数示例似乎都使用该模型进行验证。
答案 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所述的服务层,这样可以在保持错误处理的同时分离关注点,而不是依靠控制器为您完成所有操作。