Base class used to create business and validation rules. More...
Protected Member Functions | |
void | CanWriteProperty (string argument) |
Allows or blocks changing a property value. More... | |
BusinessRuleBase (Csla.Core.IPropertyInfo primaryProperty) | |
Creates an instance of the rule that applies to a specfic property. More... | |
void | LoadProperty (object obj, Csla.Core.IPropertyInfo propertyInfo, object newValue) |
Loads a property's managed field with the supplied value calling PropertyHasChanged if the value does change. More... | |
object | ReadProperty (object obj, Csla.Core.IPropertyInfo propertyInfo) |
Reads a property's field value. More... | |
Properties | |
bool | PropertiesLocked [getset] |
Gets or sets a value indicating whether property values should be locked because an async operation is running. More... | |
virtual Csla.Core.IPropertyInfo | PrimaryProperty [getset] |
Gets or sets the primary property affected by this rule. More... | |
List< Csla.Core.IPropertyInfo > | AffectedProperties [get] |
Gets a list of properties affected by this rule. More... | |
List< Csla.Core.IPropertyInfo > | InputProperties [getprotected set] |
Gets a list of secondary property values to be supplied to the rule when it is executed. More... | |
abstract bool | IsAsync [getprotected set] |
Gets a value indicating whether the rule will run on a background thread. More... | |
bool | ProvideTargetWhenAsync [getprotected set] |
Gets a value indicating that the Target property should be set even for an async rule (note that using Target from a background thread will cause major problems). More... | |
string | RuleName [get] |
Gets a unique rule:// URI for the specific instance of the rule within the context of the business object where the rule is used. More... | |
RuleUri | RuleUri [getset] |
Sets or gets the rule:// URI object for this rule. More... | |
int | Priority [getset] |
Gets the rule priority. More... | |
RunModes | RunMode [getset] |
Gets or sets the run in context. More... | |
Properties inherited from Csla.Rules.IBusinessRuleBase | |
List< Csla.Core.IPropertyInfo > | InputProperties [get] |
Gets a list of secondary property values to be supplied to the rule when it is executed. More... | |
List< Csla.Core.IPropertyInfo > | AffectedProperties [get] |
Gets a list of properties affected by this rule. More... | |
Csla.Core.IPropertyInfo | PrimaryProperty [get] |
Gets the primary property affected by this rule. More... | |
string | RuleName [get] |
Gets a unique rule:// URI for the specific instance of the rule within the context of the business object where the rule is used. More... | |
int | Priority [get] |
Gets the rule priority. More... | |
bool | ProvideTargetWhenAsync [get] |
Gets a value indicating that the Target property should be set even for an async rule (note that using Target from a background thread will cause major problems). More... | |
RunModes | RunMode [get] |
Gets the context in which the rule is allowed to execute. More... | |
bool | IsAsync [get] |
Gets a value indicating whether the Execute() method will run asynchronous code. More... | |
Base class used to create business and validation rules.
Definition at line 18 of file BusinessRuleBase.cs.
|
protected |
Creates an instance of the rule that applies to a specfic property.
primaryProperty | Primary property for this rule. |
Definition at line 145 of file BusinessRuleBase.cs.
|
protected |
Allows or blocks changing a property value.
argument |
Definition at line 134 of file BusinessRuleBase.cs.
|
protected |
Loads a property's managed field with the supplied value calling PropertyHasChanged if the value does change.
obj | Object on which to call the method. |
propertyInfo | PropertyInfo object containing property metadata. |
newValue | The new value for the property. |
No authorization checks occur when this method is called, and no PropertyChanging or PropertyChanged events are raised. Loading values does not cause validation rules to be invoked.
Definition at line 172 of file BusinessRuleBase.cs.
|
protected |
Reads a property's field value.
obj | Object on which to call the method. |
propertyInfo | PropertyInfo object containing property metadata. |
No authorization checks occur when this method is called.
Definition at line 191 of file BusinessRuleBase.cs.
|
get |
Gets a list of properties affected by this rule.
Rules for these properties are executed after rules for the primary property.
Definition at line 54 of file BusinessRuleBase.cs.
|
getprotected set |
Gets a list of secondary property values to be supplied to the rule when it is executed.
Definition at line 60 of file BusinessRuleBase.cs.
|
getprotected set |
Gets a value indicating whether the rule will run on a background thread.
Definition at line 66 of file BusinessRuleBase.cs.
|
getset |
Gets or sets the primary property affected by this rule.
Definition at line 36 of file BusinessRuleBase.cs.
|
getset |
Gets the rule priority.
Definition at line 106 of file BusinessRuleBase.cs.
|
getsetprotected |
Gets or sets a value indicating whether property values should be locked because an async operation is running.
Definition at line 31 of file BusinessRuleBase.cs.
|
getprotected set |
Gets a value indicating that the Target property should be set even for an async rule (note that using Target from a background thread will cause major problems).
Definition at line 73 of file BusinessRuleBase.cs.
|
get |
Gets a unique rule:// URI for the specific instance of the rule within the context of the business object where the rule is used.
Definition at line 88 of file BusinessRuleBase.cs.
|
getsetprotected |
Sets or gets the rule:// URI object for this rule.
Definition at line 93 of file BusinessRuleBase.cs.
|
getset |
Gets or sets the run in context.
The run in context.
Definition at line 120 of file BusinessRuleBase.cs.