vendredi 11 septembre 2015

How to set value of a property that is a class in C#

I am trying to set the value of a property that is a class.

protected async Task<bool> TryUpdate(PropertyInfo prop, object value)
{
    try
    {
        prop.SetValue(this, value);

        // If not set probably a complex type
        if (value != prop.GetValue(this))
        {
           //... Don't know what to do
        }

        return true;
    }
    ...

I'm calling this method on a number of properties from a variety of classes. This issue is when I have a class like the following:

public class Test
{
    public string Name { get; set; }

    public string Number { get; set; }

    public IComplexObject Object { get; set; }
}

Name and Number are set just fine, but if I try and set an instance of a class that inherits from IComplexObject on Object there is not errors it just remains null.

Is there an easy way to set an instance of a class as property?





Aucun commentaire:

Enregistrer un commentaire