protected virtual DynamicMetaObject RelaxTypeRestrictions( DynamicMetaObject result, object target ) { BindingRestrictions typeRestrictions = GetTypeRestriction().Merge( result.Restrictions ); var metaObject = new DynamicMetaObject( result.Expression, typeRestrictions, target ); return metaObject; }