ページの下部にコメントがあるブログ詳細ページを作成しようとしています。私はコメントのいくつかのプロパティとナビゲーションリストプロパティとして「投稿」モデルを使用しています。
私がやりたいことは、ページの一番下に新しいコメントを追加するためのフォームを作成することです。コメントには別のモデルを使用しているため、このようなシナリオの作成方法を理解するのに苦労しています。
提案をありがとう。
EDIT ここに、より良い説明のためのいくつかのコードがあります:
@model Skuami.Models.PostModel
@{
ViewBag.Title = Model.Title;
}
<div class="blogContentBox">
<div class="blogImage">
<img src="@Model.Image" />
</div>
<div class="blogContent">
<div class="blogDate">@Model.CreateDate</div>
<p class="blogTitle">@Model.Title</p>
@Model.Content
</div>
</div>
<p class="commentTitle">
@Model.Comments.Count @(Model.Comments.Count == 1 ? " comment" : " comments")
</p>
@foreach (var item in Model.Comments)
{
<div class="commentBox">
<p class="commentName">@item.Name</p>
<p class="commentDate">@item.CreateDate</p>
@item.Message
</div>
}
<div class="commentBox">
<p class="commentReply">Leave a Reply</p>
@using (Html.BeginForm("Details", "Home", FormMethod.Post, new { @class = "CommentModel" }))
{
@Html.AntiForgeryToken()
@Html.ValidationSummary(true)
<fieldset>
<legend></legend>
<div class="editor-label">
@Html.LabelFor(model => model.Comments.Name) <!-- how can I use a 2nd model -->
</div>
<div class="editor-field">
@Html.EditorFor(model => model.Name) <!-- how can I use a 2nd model -->
@Html.ValidationMessageFor(model => model.Name)
</div>
<div class="editor-label">
@Html.LabelFor(model => model.Message) <!-- how can I use a 2nd model -->
</div>
<div class="editor-field">
@Html.EditorFor(model => model.Message) <!-- how can I use a 2nd model -->
@Html.ValidationMessageFor(model => model.Message)
</div>
<p>
<input type="submit" value="Create" />
</p>
</fieldset>
}
</div>