안녕하세요, 약간의 문제가 있습니다. 리뷰 컨트롤러의 색인 세그먼트에서 다음 코드를 사용해 보았습니다.사용자 게시글에 고유 한 삭제/업데이트/편집을 할 수 없습니다.
var Info = db.tblReviews.Include(x => x.tblGame).Where(UserInfo => UserInfo.UserName.Equals(User.Identity.Name)).ToList();
return View(Info);
과 제 내에서 I 적용한 검토 컨트롤러의 생성 : 그래서,
ViewBag.GameIDFK = new SelectList(db.tblGames, "GameID", "GameName");
return View(new tblReview { UserName = @User.Identity.Name });
내 문제는 내가 사람들이 게임에 대한 리뷰를 작성 할 수 있도록 노력하고있다 유명 그것을있어 게시 모든 사용자 게임은 독특하고 게임은 자신의 계정으로 만 볼 수 있지만 편집/삭제/U에 관해서는 pdating 나는 사용자가 게임 리뷰를 올리면 자신의 게임만을 삭제/업데이트/편집 할 수 있고 다른 사용자는 편집 할 수 없도록한다.
예를 들어 내가 만든 두 명의 사용자가 sham과 bam을 가지고 있는데, 각 사용자는 리뷰 페이지에 게시 한 게임을 볼 수 있지만 편집/업데이트 및 삭제와 관련하여 사용자는 모두 삭제/수정 및 업데이트됩니다 각자 다른 게시물. ,
using System;
using System.Collections.Generic;
using System.Data;
using System.Data.Entity;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using GameTest.Models;
namespace GameTest.Controllers
{
public class ReviewController : Controller
{
private gamezoneDBEntities db = new gamezoneDBEntities();
//
// GET: /Review/
public ViewResult Index()
{
var Info = db.tblReviews.Include(x => x.tblGame).Where(UserInfo => UserInfo.UserName.Equals(User.Identity.Name)).ToList();
return View(Info);
}
//
// GET: /Review/Details/5
public ViewResult Details(int id)
{
tblReview tblreview = db.tblReviews.Find(id);
return View(tblreview);
}
//
// GET: /Review/Create
public ActionResult Create()
{
ViewBag.GameIDFK = new SelectList(db.tblGames, "GameID", "GameName");
return View(new tblReview { UserName = @User.Identity.Name });
}
//
// POST: /Review/Create
[HttpPost]
public ActionResult Create(tblReview tblreview)
{
if (ModelState.IsValid)
{
db.tblReviews.Add(tblreview);
db.SaveChanges();
return RedirectToAction("Index");
}
ViewBag.GameIDFK = new SelectList(db.tblGames, "GameID", "GameName", tblreview.GameIDFK);
return View(tblreview);
}
//
// GET: /Review/Edit/5
public ActionResult Edit(int id)
{
tblReview tblreview = db.tblReviews.Find(id);
ViewBag.GameIDFK = new SelectList(db.tblGames, "GameID", "GameName", tblreview.GameIDFK);
return View(tblreview);
}
//
// POST: /Review/Edit/5
[HttpPost]
public ActionResult Edit(tblReview tblreview)
{
if (ModelState.IsValid)
{
db.Entry(tblreview).State = EntityState.Modified;
db.SaveChanges();
return RedirectToAction("Index");
}
ViewBag.GameIDFK = new SelectList(db.tblGames, "GameID", "GameName", tblreview.GameIDFK);
return View(tblreview);
}
//
// GET: /Review/Delete/5
public ActionResult Delete(int id)
{
tblReview tblreview = db.tblReviews.Find(id);
return View(tblreview);
}
//
// POST: /Review/Delete/5
[HttpPost, ActionName("Delete")]
public ActionResult DeleteConfirmed(int id)
{
tblReview tblreview = db.tblReviews.Find(id);
db.tblReviews.Remove(tblreview);
db.SaveChanges();
return RedirectToAction("Index");
}
protected override void Dispose(bool disposing)
{
db.Dispose();
base.Dispose(disposing);
}
}
}
당신이 더 필요한 경우 나 많은
몇 가지 코드를 제공 할 수 있습니까? – user1137472
소스 코드가 추가되었습니다. – SouthShoreAK