2012-10-20 39 views
2

所以刚刚使用了一个基本教程来创建一个数据库并向其添加新记录。这一切工作正常。不过现在我想编辑记录....MVC Homecontroller在数据库中编辑详细信息

// GET: /Home/Edit/5 

    public ActionResult Edit(int id) 
    { 
     return View(); 
    } 

    // 
    // POST: /Home/Edit/5 

    [HttpPost] 
    //public ActionResult Edit(int id, FormCollection collection) 
    public ActionResult Edit([Bind(Exclude = "id")]MovieTable1 movieToCreate) 
    { 
     try 
     { 
      // TODO: Add update logic here 

      //so i need to insert a line of code here to say something like update 
      //I was using the previous code: 
      //_entities.AddToMovieTable1(movieToCreate); 
      _entities.SaveChanges();   

      return RedirectToAction("Index"); 
     } 
     catch 
     { 
      return View(); 
     } 
    } 

这个心不是工作,我想所有我需要做的就是编辑线“_entities.AddToMovieTable1(movieToCreate);”东西编辑的记录

获得新的记录工作IVE使用的代码添加...

public class HomeController : Controller 
{ 
    private MoviesDBEntities _entities = new MoviesDBEntities(); 
    // 
    // GET: /Home/ 

    public ActionResult Index() 
    { 
     return View(_entities.MovieTable1.ToList()); 
    } 

    // 
    // GET: /Home/Details/5 

    public ActionResult Details(int id) 
    { 
     return View(); 
    } 

    // 
    // GET: /Home/Create 

    public ActionResult Create() 
    { 
     return View(); 
    } 

    // 
    // POST: /Home/Create 

    [HttpPost] 
    //public ActionResult Create(FormCollection collection) 
    public ActionResult Create([Bind(Exclude = "id")]MovieTable1 movieToCreate) 
    { 
     try 
     { 
      // TODO: Add insert logic here 
      _entities.AddToMovieTable1(movieToCreate); 
      _entities.SaveChanges(); 

      return RedirectToAction("Index"); 
     } 
     catch 
     { 
      return View(); 
     } 
    } 

回答

2

你可以使用:

_entities.Attach(moveiToModify); 
_entities.Entry(moveiToModify).State = EntityState.Modified; 

我真的不知道,你为什么不包括更新所需的ID属性。

相关问题