簡體   English   中英

如何在ASP.NET MVC中將表單提交到數據庫中

[英]How do I submit a form into a database in asp.net MVC

我正在asp.net MVC中構建評論系統。 沒什么花哨的,但仍然比我的技能水平高一點。 我正在使用partialview在頁面上顯示評論表單,並且需要已登錄的用戶能夠發表評論,並使partial視圖重新加載他們提交的內容。

我當前的代碼如下:

視圖:

@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,但是不確定如何生成這樣的代碼。 預先感謝您的任何幫助。

我建議去http://www.entityframework.org/entity-framework-getting-started/並進行演練,以便您了解EF試圖做的基本工作。

完成此操作后,您將知道上面的操作。 使用EF,這確實非常容易,但是如果您對本文的顯示方式有所疑問,請與我們聯系。

祝好運。 :)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM