2017-02-06 1 views
0

소득, 가구 구성원 수 및 연방 정부 지침을 제공하는 빈곤율의 %를 계산하려고합니다. 표현 빌더 (VB에서 내가 믿는)와 함께 Access에서 사용하는 코드는 다음과 같습니다.Lightswitch C#에서 엔티티의 계산 된 속성에 "IF"문을 만드는 방법은 무엇입니까?

IIf([NumberInHousehold]>=1,([AnnualHouseHoldIncome]/(7880+([NumberInHousehold]*4180))),0) 

C# 코드는 무엇입니까? NumberInHouseHold의 데이터 유형은 "integer"이고 AnnualHouseHoldIncome의 데이터 유형은 "Money"입니다. 계산할 필드 또한 "정수"입니다.

답변

1

VBA를 (그리고 VB.Net)하여 IIf() 함수가되는 가장 직접적인 등가 "? "(일반적으로 "원"또는 "조건"연산자로 알려진) 연산자, 즉 :

result = numberInHousehold >= 1 
    ? (annualHouseholdIncome/(7880 + (numberInHousehold * 4180))) 
    : 0; 

삼항 연산자는 사용하는 결과 분기 만 평가하는 반면 IIf()는 조건의 진리에 관계없이 모든 인수를 계산하는 함수임을 유의하십시오. 대부분의 경우 삼항 연산자의 동작은 원하는 것이지만 IIf()와는 다릅니다.

+0

이 코드를 메소드 편집기에 추가했는데 제대로 저장되고 솔루션이 문제없이 게시되지만 화면을 볼 때 "PercentFPL"필드에는 아무 것도 표시되지 않으며 0도 표시되지 않습니다. – Mark

+0

사실, 아무 것도 추가하지 않으면 NumberInHouseHold 필드에 0이 계산 된 필드에 기록됩니다. – Mark

+0

NumberInHousehold 또는 AnnualHouseholdIncome 필드의 Null 값은 아마도? – Craig

관련 문제