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

A business rule defined by a lambda expression. More...

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

Public Member Functions

 Lambda (Action< IRuleContext > rule)
 Creates an instance of the rule. More...
 
 Lambda (Csla.Core.IPropertyInfo primaryProperty, Action< IRuleContext > rule)
 Creates an instance of the rule. More...
 
void AddQueryParameter (string key, string value)
 Add a query parameter to make the RuleUri uniques for this rule and primary property. More...
 

Protected Member Functions

override void Execute (IRuleContext context)
 Executes the rule. More...
 
- 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...
 
- 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...
 

Additional Inherited Members

- 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 business rule defined by a lambda expression.

Definition at line 691 of file CommonRules.cs.

Constructor & Destructor Documentation

◆ Lambda() [1/2]

Csla.Rules.CommonRules.Lambda.Lambda ( Action< IRuleContext rule)

Creates an instance of the rule.

Parameters
ruleRule implementation.

Definition at line 697 of file CommonRules.cs.

◆ Lambda() [2/2]

Csla.Rules.CommonRules.Lambda.Lambda ( Csla.Core.IPropertyInfo  primaryProperty,
Action< IRuleContext rule 
)

Creates an instance of the rule.

Parameters
primaryPropertyPrimary property for the rule.
ruleRule implementation.

Definition at line 707 of file CommonRules.cs.

Member Function Documentation

◆ AddQueryParameter()

void Csla.Rules.CommonRules.Lambda.AddQueryParameter ( string  key,
string  value 
)

Add a query parameter to make the RuleUri uniques for this rule and primary property.

Parameters
keyThe key.
valueThe value.

Definition at line 725 of file CommonRules.cs.

◆ Execute()

override void Csla.Rules.CommonRules.Lambda.Execute ( IRuleContext  context)
protectedvirtual

Executes the rule.

Parameters
contextRule context.

Reimplemented from Csla.Rules.BusinessRule.

Definition at line 736 of file CommonRules.cs.