Редактировать действие в ASP.NET MVC 3 - PullRequest
0 голосов
/ 23 мая 2011

В моем методе Edit Action я хочу сохранить все изменения, которые я делаю, вызывая действие edit.Но я думаю, что мне не хватает некоторых мыслейЭто то, что я пытаюсь.

[HttpPost]
        public ActionResult Edit(Person editPerson)
        {
            if (ModelState.IsValid)
            {

                // may be here I want to add soething
                return RedirectToAction("Index");
            }
            else
            {
                return View(editPerson);
            }
        }

Ответы [ 2 ]

0 голосов
/ 23 мая 2011

Поскольку существует несколько способов взаимодействия с резервным хранилищем, нам потребуется дополнительная информация о том, как вы это делаете (Entity Framework, LINQ to SQL и т. Д.).Если вы еще не проверили его, прочитайте блог Скотта Хансельмана на Изучение различных вариантов базы данных из известного Обеда Nerd Dinner .Это должно направить вас в правильном направлении.(Кроме того, если вы не играли с Nerd Dinner, я настоятельно рекомендую сделать это, поскольку это отличное введение в MVC и различные технологии, связанные с ним.)

0 голосов
/ 23 мая 2011

Что вы используете для сохранения объекта Person? Вы используете Entity Framework или просто sql? Я полагаю, потому что вы используете MVC3, вы используете Entity Framework. Если я вижу ваш метод, вы, скорее всего, пытаетесь создать человека, а затем отредактируйте его. Если вы редактируете, ваш метод обычно будет выглядеть как public ActionResult Edit(int id, Person editPerson)

В этом случае

using(SomeContext db = new SomeContext())
{
db.Persons.Add(editPerson);
db.SaveChanges();
}

при редактировании

using(SomeContext db = new SomeContext())
{
Person person = db.Persons.Find(id);
// Update your fields
db.SaveChanges();
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...