2012-05-04 2 views
0

Я новичок в MVC. Я добавляю в базу данных ОК с этим кодом:Модель MVC - как обновить одну строку в БД?

[HttpPost] 
    [Authorize] 
    public ActionResult Add(CourseModel course) 
    { 
     course.UserID = (Guid)Membership.GetUser().ProviderUserKey; 

     _db.Class.Add(course); 
     _db.SaveChanges(); 

     return View(); 
    } 

Но как я правильно обновить «курс», если у меня уже есть это в БД, но пользователь обновляется одно поле ?. Я могу удалить его, а затем прочитать обновленный, и это работает нормально, но я уверен, что это неправильный способ сделать это.

спасибо.

+2

Вы используете Entity Framework? – Zote

+2

Предполагая, что вы используете Entity Framework, [прочитайте это сообщение] [1]. [1]: http://stackoverflow.com/questions/160288/how-to-update-object-with-no-data-contexts – Zote

+1

, кажется, не имеет отношения к самому MVC Ваш вопрос; это больше похоже на то, что вы спрашиваете: «Как обновить одну строку в БД в Entity Framework?» или что-то вроде этого. Если это правда - можете ли вы, пожалуйста, обновить свой вопрос и теги, чтобы те, кто знает EF, действительно могли найти и помочь вам? –

ответ

2

Предполагая, что вы используете EF, чтобы обновить запись в базе данных. Использование следующего кода

_db.Entry<Course>(course).State = System.Data.EntityState.Modified; 
_db.SaveChanges(); 
Смежные вопросы