Share via


AndCondition Class

Defines a set of Condition objects to be logically evaluated using AND Boolean logic. This class cannot be inherited.

Namespace: Microsoft.SqlServer.NotificationServices.Rules
Assembly: Microsoft.SqlServer.NotificationServices.Rules (in microsoft.sqlserver.notificationservices.rules.dll)

Syntax

'Declaration
Public Class AndCondition
    Inherits ConditionTree
public class AndCondition : ConditionTree
public ref class AndCondition : public ConditionTree
public class AndCondition extends ConditionTree
public class AndCondition extends ConditionTree

Remarks

When an AndCondition tree is added to a rule, the tree evaluates to true only if all child conditions are also true.

You must specify at least one child condition using the AndCondition constructor or the inherited Children property.

Inheritance Hierarchy

System.Object
   Microsoft.SqlServer.NotificationServices.Rules.RuleObject
     Microsoft.SqlServer.NotificationServices.Rules.Condition
       Microsoft.SqlServer.NotificationServices.Rules.ConditionTree
        Microsoft.SqlServer.NotificationServices.Rules.AndCondition

Example

The following example shows how to use an AndCondition object to define a Condition for a Notification Services subscription. This condition consists of three SimpleLeafCondition objects. If all SimpleLeafCondition objects evaluate to true, the AndCondition is true.

// Create the NSInstance object.
NSInstance testInstance = 
    new NSInstance("InventoryTrackerInstance");

// Create the NSApplication object.
NSApplication testApplication =
    new NSApplication(testInstance, "InventoryTracker");

// Create Subscription object.
Subscription s = new Subscription(testApplication, 
    "InventoryTrackerSubscriptions");

// Define subscription properties
s.SubscriberId = "TestUser1";
s.Enabled = true;
s.RuleName = "InventoryTrackerRule";
s["DeviceName"] = "Work e-mail";
s["SubscriberLocale"] = "en-US";

// Define OrCondition
s.Condition = new AndCondition(
    new SimpleLeafCondition(new FieldValue("ProductName"),
                    SimpleOperator.Equals,
                    "Road-250 Black, 48"),
    new SimpleLeafCondition(new FieldValue("LocationName"),
                    SimpleOperator.Equals,
                    "Final Assembly"),
    new SimpleLeafCondition(new FieldValue("Quantity"),
                    SimpleOperator.LessThanOrEqualTo,
                    35)
);

// Add subscription
s.Add();
' Create the NSInstance object.
Dim testInstance As New NSInstance("InventoryTrackerInstance")
 
' Create the NSApplication object.
Dim testApplication As _
    New NSApplication(testInstance, "InventoryTracker")
 
' Create Subscription object.
Dim s As New Subscription(testApplication, _
    "InventoryTrackerSubscriptions")
 
' Define subscription properties
s.SubscriberId = "TestUser1"
s.Enabled = True
s.RuleName = "InventoryTrackerRule"
s("DeviceName") = "Work e-mail"
s("SubscriberLocale") = "en-US"
 
' Define OrCondition
s.Condition = New AndCondition( _
    New SimpleLeafCondition( _
        New FieldValue("ProductName"), _
        SimpleOperator.Equals, _
        "Road-250 Black, 48"), _
    New SimpleLeafCondition( _
        New FieldValue("LocationName"), _
        SimpleOperator.Equals, _
        "Final Assembly"), _
    New SimpleLeafCondition( _
        New FieldValue("Quantity"), _
        SimpleOperator.LessThanOrEqualTo, _
        35))
 
' Add subscription
s.Add()

Thread Safety

Any public static (Shared in Microsoft Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

For a list of the supported platforms, see Hardware and Software Requirements for Installing SQL Server 2005.

Target Platforms

For a list of the supported platforms, see Hardware and Software Requirements for Installing SQL Server 2005.

See Also

Reference

AndCondition Members
Microsoft.SqlServer.NotificationServices.Rules Namespace