3
사용자가 사용자 ID로 양식을 제출할 수 있도록하는 것이 좋은 보안 방법은 아니라고 들었습니다. 이로 인해 사용자 ID가 URL에 표시되도록하는 것이 바람직하지 못하다. 그러나 사용자가 다른 사용자 프로필을 볼 수있는 방법이 필요합니다. 내가 이름으로 컨트롤러 사용자 찾기에서 다음ASP.NET MVC 5의 사용자 프로필 페이지에 어떻게 링크해야합니까?
@Html.ActionLink("Details", "Details", new { id = item.username })
를 사용하여 사용자를 반환해야하는 경우
내가 대신
@Html.ActionLink("Details", "Details", new { id = item.Id })
를 사용, 궁금 해서요.
올바른 방법인가요?
이이 이미 당신이 경우 아이디를 검색해야하는 요구 사항을 제거로서 나는, 사용자 이름 접근 방식을 선호 지금 내 컨트롤러 액션
// GET: /User/Details?UserName=bbob
public ActionResult Details(string UserName)
{
if (UserName == null)
{
return new HttpStatusCodeResult(HttpStatusCode.BadRequest);
}
ApplicationUser aspnetuser = UserManager.FindByName(UserName);
if (aspnetuser == null)
{
return HttpNotFound();
}
return View(aspnetuser);
}
당신은 그의 이름 insode 컨트롤러를 사용자 bu 얻을 수 있습니다, 안 그래? – LINQ2Vodka
URL 또는 양식 POST에 ID를 보내는 데 아무런 문제가 없습니다. 데이터베이스의 모든 기본 키를 난독 화하려고합니까? http : //stackoverflow.com/questions/2087441/using-primary-key-in-asp-net-mvc-urls – Tommy