Make SetPropertyConvert<P,V>(ref field version) and SetProperty<P>(ref field version) use IPropertyInfo vs. string propertyName. and make string propertyName fail earlier. Expose private member _bypassPropertyChecks as a Read-only property.