I'm passing a lambda expression as a parameter.
In this case, someObject
has a property called property
accessible with someObject.property
.
When I pass: o => o.childListOfObjects[0].property
,
where childListOfObjects
is a List<someObejct>
and ,
expression.Body
returns o => o.childListOfObjects.get_Item(0).property
.
Skip to the end:
Is list[i]
an alias for list.get_item(i)
in C#?
Yes, properties in general are just syntactic sugar around get_PropertyName
and set_PropertyName
methods.
Indexers -- for example, list[i]
-- are just a special type of property, basically syntactic sugar around get_Item(i)
and set_Item(i)
methods.
(Note that the indexer property doesn't necessarily have to be called Item
, but that's what it's called on List<T>
, and that's the default name given to indexers on custom types too unless you override it using IndexerNameAttribute
.)
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With