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

C# 在不使用模型的情况下执行asp.net mvc验证,c#,asp.net-mvc,C#,Asp.net Mvc,如果不使用模型,如何在mvc中进行验证 我直接从控制器获取数据并显示它 如何验证?大多数示例似乎都使用该模型进行验证。尽管它被认为是违反MVC范式的,但从技术上讲,没有什么可以阻止您直接使用发布的表单 class TestController : Controller { [AcceptVerbs (HttpVerbs.Post)] public ActionResult SomeAction (FormCollection form) { if (MyC

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

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


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

尽管它被认为是违反MVC范式的,但从技术上讲,没有什么可以阻止您直接使用发布的表单

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

        RedirectToAction ("SomeAction");
    }
}

尽管它被认为是反对MVC范式的,但从技术上讲,并没有什么可以阻止您直接使用发布的表单

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

        RedirectToAction ("SomeAction");
    }
}

您可以使用中所述的服务层,这允许在保持错误处理的同时分离关注点,而不依赖控制器为您完成所有工作。

您可以使用中所述的服务层,这允许在保持错误处理的同时分离关注点,不依赖控制器为您完成所有任务。

我认为您可能希望在代码中包含[AcceptVerbs(HttpVerbs.post)]:

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

        RedirectToAction ("SomeAction");
    }
}

我认为您可能希望在代码中包含[AcceptVerbs(HttpVerbs.post)]:

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

        RedirectToAction ("SomeAction");
    }
}

好文章。但是,如果他不使用模型,那么他可能不会想要创建一篇完整的服务层创建文章。但如果他不使用模型,那么他可能不想创建一个完整的服务层