CSLA.NET 5.4.2
CSLA .NET is a software development framework that helps you build a reusable, maintainable object-oriented business layer for your app.
Csla.Rules.CommonRules.Dependency Class Reference

A rule that establishes a dependency between two properties. More...

Inheritance diagram for Csla.Rules.CommonRules.Dependency:
Csla.Rules.BusinessRule Csla.Rules.BusinessRuleBase Csla.Rules.IBusinessRule Csla.Rules.IBusinessRuleBase Csla.Rules.IBusinessRuleBase

Public Member Functions

 Dependency (Csla.Core.IPropertyInfo primaryProperty, params Csla.Core.IPropertyInfo[] dependencyProperty)
 Creates an instance of the rule. More...
 

Additional Inherited Members

- Protected Member Functions inherited from Csla.Rules.BusinessRule
 BusinessRule ()
 Creates an instance of the rule that applies to a business object as a whole. More...
 
 BusinessRule (Csla.Core.IPropertyInfo primaryProperty)
 Creates an instance of the rule that applies to a specfic property. More...
 
virtual void Execute (IRuleContext context)
 Business or validation rule implementation. More...
 
- Protected Member Functions inherited from Csla.Rules.BusinessRuleBase
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 inherited from Csla.Rules.BusinessRule
override bool IsAsync [getprotected set]
 Gets a value indicating whether the rule will run on a background thread. More...
 
- Properties inherited from Csla.Rules.BusinessRuleBase
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.IPropertyInfoAffectedProperties [get]
 Gets a list of properties affected by this rule. More...
 
List< Csla.Core.IPropertyInfoInputProperties [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.IPropertyInfoInputProperties [get]
 Gets a list of secondary property values to be supplied to the rule when it is executed. More...
 
List< Csla.Core.IPropertyInfoAffectedProperties [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...
 

Detailed Description

A rule that establishes a dependency between two properties.

Definition at line 745 of file Csla/Rules/CommonRules.cs.

Constructor & Destructor Documentation

◆ Dependency()

Csla.Rules.CommonRules.Dependency.Dependency ( Csla.Core.IPropertyInfo  primaryProperty,
params Csla.Core.IPropertyInfo[]  dependencyProperty 
)

Creates an instance of the rule.

Parameters
primaryPropertyPrimary property for the rule.
dependencyPropertyDependent property.

When rules are run for the primary property, they will also be run for the dependent property. Add a Dependency rule to a property when changing that property should run rules on some other property, and you have no other rules that would establish this dependent or affected property relationship.

Definition at line 758 of file Csla/Rules/CommonRules.cs.