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.BusinessRule Class Reference

Base class used to create business and validation rules. More...

Inheritance diagram for Csla.Rules.BusinessRule:
Csla.Rules.BusinessRuleBase Csla.Rules.IBusinessRule Csla.Rules.IBusinessRuleBase Csla.Rules.IBusinessRuleBase Csla.Analyzers.IntegrationTests.AsynchronousRuleOldSchool Csla.Analyzers.IntegrationTests.ExecuteWithAdd Csla.Analyzers.IntegrationTests.ExecuteWithAddAndNameof Csla.Analyzers.IntegrationTests.ExecuteWithoutAdd Csla.Rules.CommonRules.DataAnnotation Csla.Rules.CommonRules.Dependency Csla.Rules.CommonRules.InfoMessage Csla.Rules.CommonRules.Lambda Csla.Rules.ObjectRule Csla.Rules.PropertyRule Csla.Test.LogicalExecutionLocation.LocationBusinessBase.CheckRule Csla.Test.ValidationRules.BrokenRulesMergeRoot.RuleBroken Csla.Test.ValidationRules.CheckLazyInputFieldExists Csla.Test.ValidationRules.HasAsyncRule.Rule1 Csla.Test.ValidationRules.HasAsyncRule.Rule2 Csla.Test.ValidationRules.HasAsyncRule.Rule3 Csla.Test.ValidationRules.HasBadSharedRule.BadRule Csla.Test.ValidationRules.HasChildren.OneItem< T > Csla.Test.ValidationRules.HasInvalidAsyncRule.InvalidAsyncValidationRule Csla.Test.ValidationRules.MyRule Csla.Test.ValidationRules.NoErrorRoot.AlwaysInfo Csla.Test.ValidationRules.NoErrorRoot.AlwaysWarns Csla.Test.ValidationRules.SeverityRoot.AlwaysError Csla.Test.ValidationRules.SeverityRoot.AlwaysInfo Csla.Test.ValidationRules.SeverityRoot.AlwaysWarns Csla.Test.ValidationRules.ShortCircuit.AlwaysFails Csla.Test.ValidationRules.ShortCircuit.AlwaysWarns Csla.Test.ValidationRules.TwoProps Csla.Test.ValidationRules.ИзилдрRule Csla.Testing.Business.BusyStatus.ItemWithAsynchRule.FiveSecondsLongRule Csla.Testing.Business.Validation.ИзилдрRule

Protected Member Functions

 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

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...
 

Additional Inherited Members

Detailed Description

Base class used to create business and validation rules.

Definition at line 14 of file BusinessRule.cs.

Constructor & Destructor Documentation

◆ BusinessRule() [1/2]

Csla.Rules.BusinessRule.BusinessRule ( )
protected

Creates an instance of the rule that applies to a business object as a whole.

Definition at line 36 of file BusinessRule.cs.

◆ BusinessRule() [2/2]

Csla.Rules.BusinessRule.BusinessRule ( Csla.Core.IPropertyInfo  primaryProperty)
protected

Creates an instance of the rule that applies to a specfic property.

Parameters
primaryPropertyPrimary property for this rule.

Definition at line 45 of file BusinessRule.cs.

Member Function Documentation

◆ Execute()

Property Documentation

◆ IsAsync

override bool Csla.Rules.BusinessRule.IsAsync
getprotected set

Gets a value indicating whether the rule will run on a background thread.

Definition at line 22 of file BusinessRule.cs.