2016-09-26 2 views
0

특정 사용자 (사용자 ID는 Session["LoggedUserID"]에 저장 됨)가 만든 모든 주석을 나열하려고하지만 기본적으로 이전에 결코 완료하지 않았으므로 람다 식을 해결하는 데 어려움을 겪고 있습니다. .MVC 컨트롤러를 통해 람다로 특정 데이터 나열

다음 코드는 잘못되었지만이 점에 대해서는 내가 염두에 두었던 것입니다.

public ActionResult MyComments(Guid? id) 
     { 
      id = new Guid(Session["LoggedUserID"].ToString()); 

      var comments = db.Comments.Include(m=> m.CreatorUserId.Equals(id)); 

      return View(comments.ToList()); 

     } 

Addintional 정보 :

  • 데이터베이스 최초의 ID를위한 GUID를 사용

  • .

어떤 도움이 많이 감사합니다.

+1

대신 Where''의 Include'이해야 포함 '사용 주석 안에 엔티티를 확장하려는 경우 예 : 사용자 CreatorUser –

답변

2

관련 엔터티 SQL 스키마를 게시하는 것이 더 도움이 될 것입니다.

  1. I 주어진 ID와 일치하는 경우에만 하나를 필터링하는 방법 .Where 위해 엔티티 LINQ를 사용했다.
  2. Include는 상대 엔터티로드에 사용되므로 설명에 필요하지 않으므로 테이블에 필요하지 않습니다.

코드 :

public ActionResult MyComments(Guid? id) 
{ 
    id = Guid.Parse(Session["LoggedUserID"].ToString()); 

    var review = db.Comments.Where(m => m.CreatorUserId.Equals(id)); 
    var result = review.ToList(); 

    return View(result); 
} 
2

대신 include의 시도,

db.Comments.Where(m=> m.CreatorUserId == id); 

희망이 도움이

관련 문제