下面的代碼(控制器)從上頁讀取特定行的數據(通過@Html.ActionLink("Details", "Details", new { id=item.Id })
得到id
查看裏面)如何在同一視圖中顯示'細節'和'創建'? MVC
public ActionResult Details(Guid? id) {
if (id == null) {
return Content("id = null..");
}
Review review = db.Reviews.Find(id);
if (review == null)
{
return Content("review = null.. ");
}
return View(review);
}
到目前爲止好,但現在我想允許訪問者/用戶留下評論,給予喜歡/不喜歡等等。我想這是對View的細節/創建(換句話說,讀取/插入)模板的組合?我需要在控制器中做些什麼來完成這項工作?
從這裏開始,我就不知道該做什麼,因爲我是MVC的新手。
這是我的數據庫看起來像:(從EF模型(數據庫一)挑選):
用戶:
public System.Guid Id { get; set; }
public string UserName { get; set; }
public string Password { get; set; }
public string Email { get; set; }
評論:(如作者創建評論)
public System.Guid Id { get; set; }
public System.Guid CreatorUserId { get; set; }
public string Title { get; set; }
public string Description { get; set; }
public System.DateTime CreatedDate { get; set; }
public int UserRating { get; set; }
public int LikeCount { get; set; }
public int DislikeCount { get; set; }
CommentReview:(凡檢討會從其他用戶的評論)
public System.Guid Id { get; set; }
public System.Guid UserId { get; set; }
public System.Guid ReviewId { get; set; }
public string Comment { get; set; }
public System.DateTime CreatedDate { get; set; }
UserReview:(如果用戶喜歡的審查已經,避免多重喜歡)
public System.Guid Id { get; set; }
public System.Guid UserId { get; set; }
public System.Guid ReviewId { get; set; }
public bool HasLiked { get; set; }
這是怎麼查看用於顯示有關所選行的細節是這樣的:
<dl class="dl-horizontal">
<dt>
@Html.DisplayNameFor(model => model.Title)
</dt>
<dd>
@Html.DisplayFor(model => model.Title)
</dd>
<dt>
@Html.DisplayNameFor(model => model.Description)
</dt>
<dd>
@Html.DisplayFor(model => model.Description)
</dd>
@* ... and so on. Not sure how to add "create"-inputs for e.g. comments etc*@
我使用Session["LoggedUserID"]
噸o爲當前用戶獲取Id
。
你可以使用局部視圖http://www.codeproject.com/Tips/617361/Partial-View-in-ASP-NET-MVC – DanielVorph
啊,我明白了。只有一個問題,我如何分享數據,可以說部分視圖的「Id」?例如。我想在'review'(view1)中顯示一個特定的行,並且我想'CommentToReview'(view2)使用'review'(view1)使用的相同的'Id'。 – skylake
您可以使用該視圖的模型,例如在partialview中使用'@ Html.ActionLink(「CommentToReview」,「Details」,new {id = Model.Id})'發送該模型的該特定'Id' – Vijai