繁体   English   中英

ASP.net MVC3如何编辑SQL数据库

[英]ASP.net MVC3 howto edit sql database

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 server数据库。

假设在这里您要更新类别,则需要执行以下操作

 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();

您将需要获取要编辑的项目...在这种情况下,将从类别列表中过滤出一个类别。 然后,您可以在该实体(即MovieDb.Categories.SaveChanges())上调用savechanges方法,并传递要更新的项目。

您需要使用Model2对象创建一个新实体,将其添加到ObjectContext并保存更改。 您尚未编写任何应将任何内容保存到数据库的代码。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM