W jaki sposób można ustalić, w której wtyczce synchronicznej zmieniono pola?
Wtyczka jest rejestrowana podczas aktualizacji.
Coś jak isDirty() w JavaScript:Dodatek do aktualizacji CRM 2011: Jakie zmieniono pola?
// TODO: Implement your custom Plug-in business logic.
IOrganizationService service = localContext.OrganizationService;
Entity account = (Entity)localContext.PluginExecutionContext.InputParameters["Target"];
if (account.GetAttributeValue<String>("address1_latitude").isDirty())
{
service.Create(new Lead { FirstName = "LOCATION CHANGED" }); // this is a stub
}
W jaki sposób atrybuty, które nie zostały zmienione, są dostępne? – Bvrce
Używanie pre- lub post-obrazu (http://msdn.microsoft.com/en-us/library/gg309673.aspx#bkmk_preandpost) –
Chciałem użyć IOrganization.Retrieve, ponieważ identyfikator jest dostępny, ale sposób wygląda bardziej efektywnie. – Bvrce