var
변수에 retVal이라는 쿼리가 있습니다. 어떤 조건 후에 다른 질의와 동일시하고 싶습니다. 하지만 implicit cast of type "System.Collections.Generic.IEnumerable<AnonymousType#1>" in "System.Collections.Generic.IEnumerable<AnonymousType#2>" is impossible
과 같은 오류가 발생합니다. 왜 다른 var
변수를 정의하고 싶지 않은지 저에게 질문 할 수 있습니다. 이것은 foreach
주기에서 사용되기 때문에. `var` 변수를 다른 쿼리와 동일하게 만드는 법
var retVal = from groupItem in result.AsEnumerable()
where groupItem.Sms.First().amountOfParts == (
(from item in rawSmsList.AsEnumerable()
where item.referenceNumber == groupItem.Sms.First().referenceNumber
select item).Count()
)
select new
{
Value = groupItem.Value,
Sms = groupItem.Sms
};
//CONDITION
if (retVal.ToArray().Length==0)
{
//HERE I NEED TO RETVAL EQUATE NEW QUERY
retVal = from groupItem in result.AsEnumerable()
where groupItem.Sms.First().amountOfParts == (
(from item in rawSmsList.AsEnumerable()
where item.senderNumber == groupItem.Sms.First().senderNumber
select item).Count()
)
select new
{
Value = groupItem.Value,
Sms = groupItem.Sms
};
}
foreach (var item in retVal)//FOREACH EXPECTS THE SAME RETVAL!!!
가 어떻게 같은
var
변수에 다른 쿼리를 캐스팅 :의 코드에 살펴 보자? 또는
var
변수 유형을 찾고이를 정의 된 새 변수로 캐스팅하는 방법은 무엇입니까?
아마도 ['SequenceEqual'] (http://msdn.microsoft.com/en-us/library/bb342073.aspx)는 익명 형식의 결과 두 개를 비교하는 데 사용할 수 있습니다. –
@JonathonReinhart, 나는 equate OP가 새로운 쿼리의 결과를 기존의'retVal'에 할당하는 것을 의미한다고 생각합니다. 그 종류는 혼란 스럽지만 코드에서 보입니다. – Habib
익명 형식을 다른 형식으로 캐스팅 할 방법이 없습니까? – Nolesh