protected virtual void PreProcessTargetProperty() { if (targetPackage != null) { //check that a property matching the given name exists. Case don't matter //this MUST be done in ProcessMacros() because it goes before validateCommands packageType = targetPackage.GetType(); Logging.Debug("PackageType: {0}", packageType.ToString()); property = packageType.GetProperties().First(prop => prop.Name.ToLower().Equals(PropertyName.ToLower())); } }