2009-11-03 2 views
3

DataTable에 대해 System.Linq.Dynamic을 사용하는 샘플 linq 코드 스 니펫을 찾고 있습니다.동적 라이브러리 샘플을 사용하는 데이터 테이블에 대한 Linq?

Dim entities = (From ent In dt.AsEnumerable().Where(String.Format("IsUSFederal == {0}", "true")) _ 
Select Description = ent("Description"), Acronym = ent("Acronym")).ToList 

"이 인수로 어디에서 호출 할 수있는 액세스 가능한 곳이 없습니다."라는 오류가 발생합니다. 나는 DynamicLinq.vb 파일을 포함 시켰고 응용 프로그램은이 오류를 제외하고 잘 컴파일됩니다. Imports System.Linq.Dynamic이 포함되어 있지만 작동하지 않는 것 같습니다.

아이디어가 있으십니까? thx

+0

당신은 문제의 코드를 게시 할 수 :

dt.AsQueryable() 

라이브러리의 확장 메서드는 다음과 같이 정의되어 있기 때문에? –

답변

2

Enumerable.Where은 이고 인수는 String입니다.

(업데이트)

미안 ... 동적 라이브러리 부분을 캐치하지 않았다. 나는이 작업을 수행 할 필요가 있다고 생각 :

<Extension()> _ 
Public Function Where(ByVal source As IQueryable, ByVal predicate As String, 
         ByVal ParamArray values() As Object) As IQueryable 
+0

http://weblogs.asp.net/scottgu/archive/2008/01/07/dynamic-linq-part-1-using-the-linq-dynamic-query-library에서 linq 확장 프로그램을 사용하려고합니다. aspx 하지만 뭔가 이상한 것처럼 보입니다. 확장 기능이 사용되지 않고 있습니다. – David

+0

@David, 내 업데이트 –

+0

을 참조하십시오. OrderBy를 수행하려면 먼저 dt.AsEnumerable()을 수행해야합니다 .AsQueryable() –

관련 문제