단일 값 (예 : 'ABC')이 포함될 수있는 간단한 문자열 필드가있는 SQL 테이블이 있거나 파이프로 구분 된 목록이 포함될 수 있습니다 ('|') 문자 (예 : 'ABC | EDF | GHI'와 같이).LINQ를 사용하여 DB 테이블에 값이 있는지 확인
SharePoint 목록이 있고 내 SP 목록의 모든 값이 SQL 테이블에 있는지 확인하려면 SQL 필드에 단일 값만 있다고 가정하면 쉽게 수행 할 수 있습니다.
var listitems = from SPListItem item in spList.Items
where item[myfieldname].Equals(valueImChecking)
select item;
동일한 접근법을 사용하여 '|'로 구분 된 값 목록이 포함되어 있다고 가정 할 때 어떻게 동일한 SQL 필드를 검사합니까? 이 필드의 값이 'ABC | EDF | GHI'이고 'GHI'가 포함되어 있는지 확인하면 LINQ에서 쿼리를 어떻게 작성합니까?
TIA, - 토니.
String.Split 메서드가 필요하다고 생각합니다. 불행히도, Linq-to-SQL에는 존재하지 않습니다 ([split field a linq의 문자열] (http://stackoverflow.com/questions/9283752/split-field-a-string-in-a-linq)). 그래서 당신은 (IQueryable을'IEnumerable'로 변환하여) 로컬 컴퓨터 메모리로 데이터를 가져 와서 필드를 처리해야 할 수도 있습니다. –
@ 토니 : 내 대답 아래의 세드릭 비뇽 (Cédric Bignon)의 의견을 참조하십시오. 이게 너가 찾고있는거야? – shahkalpesh
@shahkalpesh : 네, 그렇게 믿습니다. 감사. – Tony