Skip to main content
A newer version of this page is available. .
.NET Framework 4.5.2+

How to: Validate an Object

This example demonstrates how to prevent the Name property from being set to an empty string. If this property is set to an empty string, XPO throws a RequiredPropertyValueMissing exception.

public class RequiredPropertyValueMissing: Exception {
    public RequiredPropertyValueMissing(XPObject theObject, string propertyName):
        base(String.Format("The {0} property of the {1} object with id {2} must have a value", 
          propertyName, theObject.GetType().Name, theObject.Oid)) {
    }
}

public class Company : Person {
public string Name {
    get { return fName; }
    set { SetPropertyValue(nameof(Name), ref fName, value); }
}
string fName = "";

    protected override void OnSaving() {
        if (Name == "")
          throw new RequiredPropertyValueMissing(this, nameof(Name));
    }
}
See Also