2014-01-30 3 views
0

나는 C#을 사용하고 로그인 세션이 있습니다.SQL을 사용하는 경우 int로 세션을 변환하는 방법

이 사이트는 기자가 작성한 뉴스 (니체) 만 볼 것입니다. (저널리스트가 뉴스를 편집 할 수있는 사이트입니다)

protected void FyllNyhetDropDownList() 
{ 
    using (NyhetAdminDataContext dbKobling = new NyhetAdminDataContext()) 
    {    
     Journalist brukernavn = (from journalist in dbKobling.Journalists 
           where journalist.JournalistId = Convert.ToInt16(Session["bruker"].ToString()) 
           select journalist).SingleOrDefault(); 

     List<Nyhet> nyhetliste = (from nyhet in dbKobling.Nyhets 
            select nyhet).ToList(); 

     if (nyhetliste.Count() > 0) 
     { 
      NyhetDropDowwnList.DataTextField = "Tittel"; 
      NyhetDropDowwnList.DataValueField = "NyhetId"; 
      NyhetDropDowwnList.DataSource = nyhetliste; 
      NyhetDropDowwnList.DataBind(); 
     } 
    } 
} 

여기 모두 잘못되었습니다. 누구든지 도와 줄 수 있습니까?

where journalist.JournalistId = Convert.ToInt16(Session["bruker"].ToString()) 

나는

암시 '부울'에 유형 'INT'을 변환 할 수 없습니다 오류 메시지가 어떤 도움을

감사를 얻을!

Journalist brukernavn = dbKobling.Journalists.SingleOrDefault(x => x.JournalistId ==             
        Convert.Int16(Session["bruker"].ToString())); 
+2

'where' 절에는 조건문이 필요합니다. 당신은'= '비교 연산자가 아닌'='할당 연산자를 사용하고 있습니다. 'JournalistId'에'2^16' 이상의 값이 필요하다면'Int16'을 사용하지 말라고 경고합니다. –

답변

2

아래

+0

예, 그 중 하나가 "="누락되었습니다. 감사합니다! – Simen

+0

@Simen - 문제 없습니다! –

0

시도 당신은 ==를 사용해야하지?

where journalist.JournalistId == Convert.ToInt16(Session["bruker"].ToString())