DevForce Help Reference
Querying Event
Example 


Occurs before the EntityManager executes a query.
Syntax
'Declaration
 
Public Event Querying As EventHandler(Of EntityQueryingEventArgs)
'Usage
 
Dim instance As EntityManager
Dim handler As EventHandler(Of EntityQueryingEventArgs)
 
AddHandler instance.Querying, handler
Event Data

The event handler receives an argument of type EntityQueryingEventArgs containing data related to this event. The following EntityQueryingEventArgs properties provide information specific to this event.

PropertyDescription
Cancel (Inherited from System.ComponentModel.CancelEventArgs)
Query The IEntityQuery involved in this event.  
Remarks
The event handler can modify the EntityQueryingEventArgs.Query if needed, and set EntityQueryingEventArgs.Cancel to cancel execution of the query. If a query is cancelled, a NullEntity or null entity list will be returned.
Example
public void EntityManager_EventSample() {

  var mgr = new DomainModelEntityManager();
  // Setup some handlers.
  mgr.Querying += QueryingHandler;
  mgr.Fetching += FetchingHandler;
  mgr.Queried += QueriedHandler;
  mgr.Saving += SavingHandler;
  mgr.Saved += SavedHandler;

  // Now try some fetches and saves.

  var orders = mgr.OrderSummaries
    .Where(o => o.Customer.Id == 1)
    .Include("Customer")
    .Include("OrderDetails").ToList();
  DebugFns.WriteLine("Order count = " + orders.Count.ToString());

  // Change the first order and its details.
  OrderSummary anOrder = orders[0];
  anOrder.Freight = 200;
  foreach (OrderDetail dtl in anOrder.OrderDetails) {
    dtl.Discount = .05F;
  }
  mgr.SaveChanges();
}

void QueryingHandler(object sender, EntityQueryingEventArgs e) {
  DebugFns.WriteLine("Querying " + e.Query.ToString());
}

void FetchingHandler(object sender, EntityFetchingEventArgs e) {
  DebugFns.WriteLine("Fetching " + e.Query.ToString());
}

void QueriedHandler(object sender, EntityQueriedEventArgs e) {
  DebugFns.WriteLine("Queried " + e.Query.ToString());
  foreach (Entity anEntity in e.Results) {
    DebugFns.WriteLine("Queried - " + anEntity.EntityKey.ToString());
  }
}

void SavingHandler(object sender, EntitySavingEventArgs e) {
  foreach (Entity anEntity in e.Entities) {
    DebugFns.WriteLine("Saving - " + anEntity.EntityKey.ToString() + " - " + anEntity.EntityState.ToString());
  }
}
void SavedHandler(object sender, EntitySavedEventArgs e) {
  foreach (Entity anEntity in e.Entities) {
    DebugFns.WriteLine("Saved - " + anEntity.EntityKey.ToString());
  }
}
Requirements

Target Platforms: Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

See Also

Reference

EntityManager Class
EntityManager Members

Send Feedback