LINQ의 Contains 메서드를 사용한 대소문자 구분 없는 문자열 비교
LINQ 쿼리에서 문자열 비교 작업을 수행할 때는 대소문자 구분을 고려하는 것이 중요합니다. 기본적으로 Contains 메서드는 대소문자를 구분합니다. 즉, "CaseSensitive"와 "casesensitive"는 일치하지 않습니다.
문제:
다음 LINQ 쿼리에서 우리는 설명 필터를 기반으로 FACILITY_ITEM 항목을 검색하는 것을 목표로 합니다. 그러나 쿼리는 현재 대소문자를 구분하므로 원하는 결과가 반환되지 않을 수 있습니다.
public IQueryable<FACILITY_ITEM> GetFacilityItemRootByDescription(string description) { return this.ObjectContext.FACILITY_ITEM.Where(fi => fi.DESCRIPTION.Contains(description)); }
해결책:
비교에서 대소문자를 구분하지 않으려면 다음을 수행하세요. 포함 확인을 수행하기 전에 ToLower() 메서드를 활용하세요. 이렇게 하면 설명 필터와 데이터베이스 값이 모두 소문자로 변환되어 대소문자를 구분하지 않고 비교할 수 있습니다.
fi => fi.DESCRIPTION.ToLower().Contains(description.ToLower())
이 업데이트된 표현식을 사용하면 쿼리는 시설 항목 설명이 설명 필터와 일치하는 결과를 반환합니다. 경우에 관계없이
위 내용은 LINQ의 Contains 메서드를 사용하여 대소문자를 구분하지 않는 문자열 비교를 어떻게 수행할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!