2012-09-11 2 views
2
MovieStoreEntities MovieDb = new MovieStoreEntities(); 
public ActionResult Edit(int id) 
{ 

    //var EditMovie1 = MovieDb 
    AddMovieModel EditMovie = (from M in MovieDb.Movies 
           from C in MovieDb.Categories 
           where M.CategoryId == C.Id 
           where M.Id == id 
           select new AddMovieModel { Name = M.Name, Director = M.Director, Country = M.Country, categorie = C.CategoryName, Category = M.CategoryId }).FirstOrDefault(); 

    //AddMovieModel EditMovie1 = MovieDb.Movies.Where(m => m.Id == id).Select(m => new AddMovieModel {m.Id }).First(); 
    List<CategoryModel> categories = MovieDb.Categories 
     .Select(category => new CategoryModel { Category = category.CategoryName, id = category.Id }) 
     .ToList(); 

    ViewBag.Category = new SelectList(categories, "Id", "Category"); 


    return View(EditMovie); 
} 

// 
// POST: /Default1/Edit/5 

[HttpPost] 
public ActionResult Edit(AddMovieModel Model2) 
{ 
    List<CategoryModel> categories = MovieDb.Categories 
     .Select(category => new CategoryModel { Category = category.CategoryName, id = category.Id }) 
     .ToList(); 
    ViewBag.Category = new SelectList(categories, "Id", "Category"); 



    if (ModelState.IsValid) 
    { 
     //MovieStoreEntities model = new MovieStoreEntities(); 






     MovieDb.SaveChanges(); 


     return View("Thanks2", Model2); 
    } 
    else 
     return View(); 

} 

이것은 영화 정보를 편집하고 SQL Server에서 데이터베이스를 업데이트하기 위해 작성한 코드입니다. 이것은 컴파일 오류가 없지만 SQL 서버 데이터베이스를 업데이트하지 못했습니다.ASP.net MVC3 howto 편집 SQL 데이터베이스

답변

4

여기 가정하면 당신은 당신이 경우에 ...

List<CategoryModel> categories = MovieDb.Categories 
    .Select(category => new CategoryModel { Category = category.CategoryName, id = category.Id }) 
    .ToList(); 
ViewBag.Category = new SelectList(categories, "Id", "Category") 
Category category = new Category() 
category = categories.First(p=>p.CategoryId == Id); 
category.Name = "New Name"; 
MovieDb.Categories.SaveChanges(category); 
MovieDb.SaveChanges(); 
당신이 편집하고자하는 항목을 얻을해야합니다

같은 것을 할 필요가에서 필터링 될 카테고리를 카테고리를 것 업데이트하는 카테고리의리스트 그런 다음 해당 엔터티의 savechanges 메서드 즉 MovieDb.Categories.SaveChanges()를 호출하고 업데이트 할 항목을 전달할 수 있습니다.

+1

영화 테이블을 업데이트하고 싶습니다. – user1662380

0

Model2 개체를 사용하여 새 엔터티를 만들고이를 ObjectContext에 추가하고 변경 내용을 저장해야합니다. 데이터베이스에 아무 것도 저장해야하는 코드를 작성하지 않았습니다.

관련 문제