protected void SetPropertyValue(ConfigurationProperty prop, object value, bool ignoreLocks)
{
try
{
if (value != null)
{
/* XXX all i know for certain is that Validation happens here */
prop.Validate(value);
/* XXX presumably the actual setting of the
* property happens here instead of in the
* set_Item code below, but that would mean
* the Value needs to be stuffed in the
* property, not the propertyinfo (or else the
* property needs a ref to the property info
* to correctly set the value). */
}
}
catch (Exception e)
{
throw new ConfigurationErrorsException(
string.Format("The value for the property '{0}' on type {1} is not valid.", prop.Name,
ElementInformation.Type), e);
}
}