いくつvar
かのクエリに等しいretValという変数があります。いくつかの条件の後、私はそれを別のクエリと同一視したいと思います。しかし、のようなエラーが発生しますimplicit cast of type "System.Collections.Generic.IEnumerable<AnonymousType#1>" in "System.Collections.Generic.IEnumerable<AnonymousType#2>" is impossible
。var
別の変数を定義したくない理由を私に尋ねることができます。foreach
これはサイクルで使用されるためです。コードを見てみましょう:
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
て、それを新しく定義された変数にキャストする方法は?