As its name suggests, a value reader is able to read a value from an object. The object from which the value is read is called the source object.
In many cases, the value reader reads the value from a source object exactly as the value exists on the source object. For example, you want to read the name of a contact.
But in other cases, the value reader must do more. For example, consider a case where a contact has a property that stores a collection of names (first name, surname, nickname, etc.) You want to read a specific name. In this case, the value reader would be able to determine which name you want to read.
And in other cases, the value reader can be used to transform
values. For example, consider a case where you want to read the
contact’s date of birth. The contact object returns a .NET
object. But you need the value in a specific format:
A value reader can be used to read the
DateTime and then
convert that object to a string.