ASP.NET MVC: отправка данных в представления в запросах POST - PullRequest
1 голос
/ 24 августа 2010

У меня есть следующий код:

    public ActionResult Foo()
    {
        var a = "a";


        return View(new FooModel {  A = a});

    }

    [HttpPost]
    public ActionResult Foo(....)
    {
        // I need to set all the values of the ViewModel again, not to get a null exception in the view
         return View(new FooModel {  A = a});
    }

Так, как я могу сохранить это СУХОЙ и не повторять вещи, которые я уже сделал?

Ответы [ 2 ]

1 голос
/ 24 августа 2010

Создайте третий метод, private, который будет устанавливать эти данные для вас, затем используйте его в обоих ваших методах контроллера или, если вы не хотите делать слишком много дополнительных методов в вашем контроллере, создайте некоторый вспомогательный класс со статическими методами это вернет вам. В любом случае, метод с разделением - это элегантное решение.

0 голосов
/ 24 августа 2010

Может быть, это будет глупо, но это работает:)

[HttpPost]
    public ActionResult Foo(....)
    {
        // I need to set all the values of the ViewModel again, not to get a null exception in the view
         return Foo();
    }
...