NopFinance stuurt altijd events als een domein-object wordt aangemaakt, wijzigt of wordt verwijderd uit de database. Daarnaast zijn er speciale events als een type van een object wijzigt; zoals een product type bij een product.
In onderstaand voorbeeld zie je een Address event consumer die luistert naar twee events te weten: address insert en address update:
Vergeet niet je class te registreren in Autofac!
Wil je weten wat voor events er allemaal zijn? Kijk dan in NopFinance.Services.Events.EventPublisherExtensions.cs
In onderstaand voorbeeld zie je een Address event consumer die luistert naar twee events te weten: address insert en address update:
Vergeet niet je class te registreren in Autofac!
/// <summary>
/// Example of event listener. Listens to Entity Updated and Entity Inserted of Address types
/// Register this class in autofac using the following:
/// builder.RegisterType<MyAddressEventListener>().AsSelf()
/// .As<IConsumer<EntityInserted<Address>>>()
/// .As<IConsumer<EntityUpdated<Address>>>()
/// .SingleInstance(); //Must use singleinstance if your class is a Winforms UI control/form
/// </summary>
public class MyAddressEventListener : IConsumer<EntityUpdated<Address>>,
IConsumer<EntityInserted<Address>>
{
bool IConsumer<EntityUpdated<Address>>.CanConsumeEvents()
{
//return false if we dont want to consume this type of event at this moment. Else return true;
return true; //We want to consume this type of event
}
void IConsumer<EntityUpdated<Address>>.HandleEvent(EntityUpdated<Address> eventMessage)
{
var address = eventMessage.Entity;
}
bool IConsumer<EntityInserted<Address>>.CanConsumeEvents()
{
//return false if we dont want to consume this type of event at this moment. Else return true;
return true; //We want to consume this type of event
}
void IConsumer<EntityInserted<Address>>.HandleEvent(EntityInserted<Address> eventMessage)
{
var address = eventMessage.Entity;
}
}
Wil je weten wat voor events er allemaal zijn? Kijk dan in NopFinance.Services.Events.EventPublisherExtensions.cs
0
"In an age where information is abundantly available, it is no longer enough to possess it. You have to act on it!"