Conditional Delivery of Updated Objects¶
Consider a data table called Order
. The table contains a column named orderAmount
. The code below adds a listener for the update
event for the Order
table.
var orderEventHandler = Backendless.Data.Of( "Order" ).RT();
orderEventHandler.AddUpdateListener( "orderAmount > 1000", updatedOrder =>
{
Console.WriteLine( $"an Order object has been updated in the database. Object ID - {updatedOrder["objectId"]}");
} );
Assume the following class represents objects from the Order table:
public class Order
{
public string ObjectId{ get; set; }
public string OrderName{ get; set; }
public double OrderAmount{ get; set; }
}
var orderEventHandler = Backendless.Data.Of<Order>().RT();
orderEventHandler.AddUpdateListener( "OrderAmount > 1000", updatedOrder =>
{
Console.WriteLine( $"an Order object has been updated in the database. Object ID - {updatedOrder.ObjectId}");
} );
The event listener will receive only the Order
objects which are being updated in the database where the amount of order is greater than 1000. This is achieved with the first argument in the AddUpdateListener
method. The argument is a where clause
condition, which references the orderAmount
column and requests that the real-time database sends only the matching objects. The second argument is a callback object which will receive any updated object which matches the where clause condition. Notice the argument of the delegate function method is the actual object updated in the database.
For more information about the whereClause syntax, see the Condition Syntax section of the guide.