vb.net
  • expression
  • databound
  • conditional-statements
  • 2010-12-01 5 views 1 likes 
    1

    2 가지 조건이 충족되면 이미지를 표시하고 싶습니다.데이터 바인딩 식의 조건문

    1. 데이터 항목은
    2. 데이터 항목의 값이 0

    표식보다 큰

    <img id="Img1" runat="server" visible='<%#IIF(DataBinder.Eval(Container.DataItem,  
    "amount") is DBNull.Value Or DataBinder.Eval(Container.DataItem, 
    "amount") = 0, False, True)%>' src="/Images/check.png" /> 
    

    오류 메시지

    연산자 '='널인 'DBNull'유형에 대해 정의되지 않았으며 'Integer'를 입력하십시오. 설명 : 현재 웹 요청을 실행하는 동안 처리되지 않은 예외가 발생했습니다. 오류 및 코드에서 시작된 위치에 대한 자세한 정보는 스택 추적을 검토하십시오.

    예외 정보 : System.InvalidCastException : 연산자 '=' 'DBNull'형식 및 '정수'형식에 대해 정의되지 않았습니다.

    답변

    0

    OrElse을 사용해보세요. VB.Net에서 Or 조건부 연산자는 성공에 관계없이 양측이 평가하도록합니다. 그래서 당신이 null을 가지고 있다면 그것은 어쨌든 비교를 시도 할 것입니다. OrElse을 사용하면 첫 번째 조건이 참이면 두 번째 조건이 평가되지 않습니다.

     관련 문제

    • 관련 문제 없음^_^