나는 이와 같이 동적 인 Linq 쿼리를 사용합니다. 결과 집합을 배열로 변환해야합니다. 그러나 IQueryable 형식을 배열로 변환 할 수 없습니다. 어떠한 제안?배열에 IQueryable 유형
내 코드 : - : foreach는 (쿼리에 var에 STR) -
var query = Data.AsEnumerable()
.AsQueryable()
.Select("new(it[\"Country\"] as Country)", "it")
.Take(10);
foreach (string str in query) // **getting error Unable to cast object of type 'DynamicClass1' to type 'System.String**
{
}
나는 다음과 같이 사용하여 고정.
하지만 지금 다른 문제가 있습니다. 조건을 쿼리에 추가했습니다. 이제 오류가 발생했습니다. "'DataRow'"유형에 'Country'필드가 없습니다. 당신이 Dynamic LINQ
모든 확장을 사용하는 경우 다음과 같은 당신이 당신의 경우 str
에 대한이
foreach (dynamic str in query)
{
....
}
같은 예를 들어 코드를 변경할 필요가 있으므로, dynamic
요소 컬렉션을 반환 필드 개체 내 쿼리
var query= Data.AsEnumerable().AsQueryable().Where("Country = @0", "London").Select("new (Country as Country)");
? 'string str'이 무엇인지 설명하십시오. – Gabe
'AsEnumerable(). AsQueryable()'은 너무 나쁜 아이디어 인 것 같습니다 ... – MarcinJuraszek
reply.I 덕분에 고맙습니다. foreach (쿼리의 var str). 하지만 지금 또 다른 문제가 있습니다. 조건을 쿼리에 추가했습니다. 이제 오류가 발생했습니다. " 'DataRow'유형에 'Country'필드가 없습니다. 다음은 내 쿼리입니다. query = Data.AsEnumerable(). AsQueryable(). Where ("Country = @ 0", "London") Select ("new (Country as Country)"); – Dev