public class Order : XPObject {
[PersistentAlias("Iif(MainCustomerIsOne, CustomerOne, CustomerTwo)")]
public Person MainCustomer {
get { return (Person)EvaluateAlias("MainCustomer"); }
}
[PersistentAlias("IsNull(CustomerOne, CustomerTwo)")]
public Person NotNullCustomer {
get { return (Person)EvaluateAlias("NotNullCustomer"); }
}
[PersistentAlias("[<Person>][Oid = ^.CustomerOne].Single()")]
public Person CustomerOneBySingle {
get { return (Person)EvaluateAlias("CustomerOneBySingle"); ; }
}
public bool MainCustomerIsOne {
get { return mainCustomerIsOne; }
set { SetPropertyValue("MainCustomerIsOne", ref mainCustomerIsOne, value); }
}
public Person CustomerOne {
get { return customer1; }
set { SetPropertyValue("CustomerOne", ref customer1, value); }
}
public Person CustomerTwo {
get { return customer2; }
set { SetPropertyValue("CustomerTwo", ref customer2, value); }
}
}