私が達成しようとしているのは、基本的に、上部に新しい投稿を入力するためのフォームが表示され、フォームの下に既に存在する投稿のリストが表示されるビューを持つことです。また、さまざまなタイプの投稿を表示できるように、このビューをやや一般的なものにしようとしています。
明確にするために、投稿とは、Http-Post ではなく、Facebook のステータス投稿のようなものを意味します。
すべての投稿を表示するホームページがあり、そのプロファイルに関連付けられた投稿のみを表示するプロファイル ページがあるとします。
したがって、次のような _Posts 部分ビューがあります。
@model IEnumerable<Post>
@Html.Partial("_CreatePost", new Post())
@foreach (var item in Model)
{
<div class="Post">
<h5>@item.Title</h5>
<p>@DateTime.Now.Subtract(item.Date).ToString("mm") minutes ago</p>
<p>@item.Content</p>
</div>
}
部分ビューのコードは次のとおりです。
@model MVC_Test_CRUD.Models.Post
<script src="~/Scripts/jquery-1.7.1.min.js"></script>
<script src="~/Scripts/jquery.validate.min.js"></script>
<script src="~/Scripts/jquery.validate.unobtrusive.min.js"></script>
@using (Html.BeginForm("Create","Post")) {
@Html.ValidationSummary(true)
<fieldset>
<legend>Post</legend>
<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.Content)
</div>
<div class="editor-field">
@Html.EditorFor(model => model.Content)
@Html.ValidationMessageFor(model => model.Content)
</div>
<p>
<input type="submit" value="Create" />
</p>
</fieldset>
}
そして、投稿のリストを正常に表示し、新しい投稿を作成することもできます.
また、コントローラーに標準の Create Action があるため、次のようになります。
return RedirectToAction("Index")
作成が成功した場合。だから私の質問は、どこに応じてどこにリダイレクトするか(ホーム/インデックスまたはプロファイル/インデックスまたは他の場所)についてコントローラーに追加のパラメーターを送信する方法です
@Html.Partial("_CreatePost", new Post())
挿入されました。