首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

请教MVC3.0中的保存有关问题

2012-09-13 
请问MVC3.0中的保存问题!最近刚开始学习MVC3.0自己添加了个ControllersC# code public class MoviesContro

请问MVC3.0中的保存问题!
最近刚开始学习MVC3.0
自己添加了个Controllers
 

C# code
 public class MoviesController : Controller    {        //        // GET: /Movies/        MovieDBContext db = new MovieDBContext();        public ActionResult Index()        {            var movies = from m in db.Movies                         where m.ReleaseDate > new DateTime(1984, 6, 1)                         select m;          //  return View();            return View(movies.ToList());        }        public ActionResult CreateDocument()        {            return View();        }        [HttpPost]        public ActionResult CreateDocument(Movie newMovie)        {            if (ModelState.IsValid)            {                db.Movies.Add(newMovie);                db.SaveChanges();                return RedirectToAction("Index");            }            else                return View(newMovie);        }    }

运行起来 怎么就不能保存呢?
C# code
@model MvcApplicationLKOne.Models.Movie@{    ViewBag.Title = "CreateDocument&新建一条数据";}<h2>CreateDocument</h2><script src="@Url.Content("~/Scripts/jquery.validate.min.js")" type="text/javascript"></script><script src="@Url.Content("~/Scripts/jquery.validate.unobtrusive.min.js")" type="text/javascript"></script>@using (Html.BeginForm()) {    @Html.ValidationSummary(true)    <fieldset>        <legend>Movie</legend>           @Html.HiddenFor(Model=>Model.ID)        <div class="editor-label">            @Html.LabelFor(model => model.Title)        </div>        <div class="editor-field">            @Html.EditorFor(model => model.Title)            @Html.ValidationMessageFor(model => model.Title)        </div>        <div class="editor-label">            @Html.LabelFor(model => model.ReleaseDate)        </div>        <div class="editor-field">            @Html.EditorFor(model => model.ReleaseDate)            @Html.ValidationMessageFor(model => model.ReleaseDate)        </div>        <div class="editor-label">            @Html.LabelFor(model => model.Genre)        </div>        <div class="editor-field">            @Html.EditorFor(model => model.Genre)            @Html.ValidationMessageFor(model => model.Genre)        </div>        <div class="editor-label">            @Html.LabelFor(model => model.Price)        </div>        <div class="editor-field">            @Html.EditorFor(model => model.Price)            @Html.ValidationMessageFor(model => model.Price)        </div>        <p>            <input type="submit" value="Create" />        </p>    </fieldset>}<div>    @Html.ActionLink("Back to List", "Index")</div>


[解决办法]
在 if (ModelState.IsValid) 下一个断点。
[解决办法]
View:
Html.BeginForm()
=>
Html.BeginForm("CreateDocument", "Movies")

Controller:

public ActionResult CreateDocument(Movie newMovie)
{
if (ModelState.IsValid)
{
UpdateModel(newMovie);
db.Movies.Add(newMovie);
db.SaveChanges();
return RedirectToAction("Index");
}
else


return View(newMovie);
}

[解决办法]
点击submit表单 提交到后台没?
[解决办法]
[HttpPost]
public ActionResult CreateDocument(Movie newMovie)
{
if (True || ModelState.IsValid)
{
db.Movies.Add(newMovie);
db.SaveChanges();
return RedirectToAction("Index");
}
else
return View(newMovie);
}
[解决办法]
使用前new一下你的dbContext
[解决办法]
出错地方的代码贴出来看看.
[解决办法]
有错误吗?Movie 有主键吗,
[解决办法]
都贴出来看看

热点排行