質問

I have a list of objects as ICollection<objectA> listA. Now I'm trying to loop thru this listA and trying to match a condition and assign the result found into a variable. I tried below:

varB.someDesc = listA.FirstOrDefault(x=>x.ID == varB.ID).someDesc

Error complaining that x.ID is object null reference. When I put a break point, I can see there are many items in listA and there is an attribute ID. May I know what goes wrong?

役に立ちましたか?

解決

I suggest validating the return value of FirstOrDefault() as follows:

var item = listA.FirstOrDefault(x=>x.ID == varB.ID);
if (item != null)
    varB.someDesc = item.someDesc;

The error might not be exactly what you think it is.

他のヒント

Try this code.

varB.someDesc = listA.Where(x=>x.ID == varB.ID).FirstOrDefault().someDesc

you better check Object Null before assigning.

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top