I assumed that for an Update plugin, it specified a list of attributes, that if are changed, cause the plugin to fire.
So if I register a plugin against Foo
, with only one filtering attribute specified against Bar
, every time a Foo
entity is updated, CRM performs a check to see if Bar
has been updated, if it has, it runs my plugin. So with the code below, I would expect my plugin to execute once.
Foo foo = new Foo();
foo.Bar = 0;
foo.Id = service.Create(foo);
foo.Bar = 1;
service.Update(foo.Bar); // My plugin would execute
service.Update(foo.Bar); // Bar hasn't changed, I would assume the plugin will not execute
Am I right in this assumption?