我如何提交一个表单到数据库中的asp.net MVC

本文关键字:数据库 asp MVC net 表单 何提交 提交 一个 | 更新日期: 2023-09-27 18:12:35

我正在asp.net MVC中构建一个评论系统。没什么特别的,但还是比我的技术水平高了一点。我正在使用一个局部视图来显示页面上的评论表单,并需要有登录的用户能够评论,并有局部视图重新加载他们提交的内容。

我现在的代码如下:

视图:

@using Microsoft.AspNet.Identity
@model DCH.Web.Models.CollaborativeProjectDetailsViewModel
<script src="~/Scripts/jquery.unobtrusive-ajax.js"></script>
<script src="//tinymce.cachefly.net/4.1/tinymce.min.js"></script>
<script>
tinymce.init({ selector: '#commentBox',
    plugins: [
        ["advlist autolink link image lists charmap print preview hr anchor pagebreak spellchecker"],
        ["searchreplace wordcount visualblocks visualchars code insertdatetime media nonbreaking"],
        ["save table contextmenu directionality emoticons template paste"]
    ],
    statusbar: false,
    menubar: false
});
</script>
@{
var loggedInUser = User.Identity.GetUserName();
}
    <!--Comments-->
<div>
<h3>Comments</h3>
<p> You are logged in as: <span class="commentUser">@loggedInUser</span> 
@Html.ActionLink("(Log Out)", "LogOut", "Account")</p>
</div>
@using (Ajax.BeginForm("CommentForm", null, new AjaxOptions { HttpMethod = "POST",     InsertionMode = InsertionMode.Replace }, new { id = "CollaborativeCommentForm" }))
{
@Html.AntiForgeryToken()
@Html.ValidationSummary(true)
<div>
    @Html.ValidationMessageFor(m => m.Content)
    @Html.TextAreaFor(m => m.Content, new {style = "max-width: 1000px; width = 1000px", @class = "form-control", rows = "10", id = "commentBox"})
</div>
<div class="pull-right comment-submit-top-pad">
    <input type="button" value="Cancel" class="btn btn-danger" />
    <input type="button" value="Submit" class="btn btn-primary" />
</div>
<!--End Comments-->
}

模型:

[Required]
    public int Id { get; set; }
    public string PostedBy { get; set; }
    public DateTime PostedOn { get; set; }
    [Required(ErrorMessage = "Please fill in a comment below")]
    [AllowHtml]
    public string Content { get; set; }

控制器:

[HttpPost]
    public ActionResult CommentForm(CollaborativeProjectDetailsViewModel model)
    {
        if (ModelState.IsValid)
        {
            Session["CollaborativeComments"] = model;
        }
        return PartialView("CollaborativeComments");
    }

现在我看了asp.net的教程,仍然不知道该怎么做。我知道,我必须能够db.Comments.Add,但我不确定如何生成这样的代码。提前感谢您的帮助

我如何提交一个表单到数据库中的asp.net MVC

我建议您访问http://www.entityframework.org/entity-framework-getting-started/并进行该攻略,以便您了解EF尝试做的基本内容。

一旦你这样做了,你就知道上面该怎么做了。使用EF真的非常容易,但是如果你想知道文章将如何展示给你。

好运。:)