다음 형식의 테이블이 있습니다.LINQ의 DateTime으로 문자열 캐스팅
PID ID Label Value
------------------------------------------
1 1 First Name Jenna
1 2 DOB 10/12/1980
내가 DOB의 J와 월부터 시작하여 성 내 코드에서 10
을 여기서 모두의 PID를 검색해야, 나는 C#에서 DataTable에 이러한를 검색 한 다음를 검색하는 LINQ를 사용하려고 내가 원하는 결과. 이것은 단지 예일뿐입니다. 이 레이블은 사용자가 정의한 모든 것일 수 있습니다.
LINQ를 사용하여 이름이 J로 시작하는 모든 PID를 검색 할 수 있지만 DOB에 대한 값을 전송하려고 할 때마다 유효하지 않은 오류가 발생합니다. Value에는 모든 유형의 정보가 포함될 수 있으므로 데이터베이스의 열 유형을 변경할 수 없습니다.
내 코드는 다음과 같습니다. 나는 LINQ에 익숙하지 않고 여전히 주위를 알아 내려고 노력하고 있습니다.
var resultQuery = from r in query.AsEnumerable()
where (r.Field<string>("Label") == Label &&
r.Field<DateTime>("Value").Month == 10)
select r.Field<int>("PID");
"제나"의 날짜 시간 값이 무엇 필터링? 나는 이것이 가능하다는 것을 확신하지 못한다. – Bobson