This project is read-only.

InvalidateAllActions

Apr 8, 2014 at 4:13 PM
Edited Apr 8, 2014 at 5:46 PM
InvalidateAllActions does not appear to be working anymore.

I had to replace it with call to InvalidateCanExecute():
((ViewAction)UnlogAction).InvalidateCanExecute();


PS:
I just realize that InvalidateCanExecute() is not defined in IViewAction but in the implementation class.
Apr 10, 2014 at 9:24 PM
Hmmm... that's not good :-). I will have to take a look.

You are correct that InvaliateCanExecute() is an implementation helper, not something crucially required of all view actions, and thus it isn't on the interface. It's one of those trade-offs. There is a lot of stuff that is generally useful on view actions, but if we add them all to the interface it a) becomes very hard for people to implement that interface, and b) we pile up more and more clutter and thus you get this phenomenon of mature frameworks being very heavy and falling out of favor for no reason other than becoming to heavy. So we are trying to mitigate that as much as we can.


Markus
Apr 10, 2014 at 9:31 PM
I just took a look and it looks OK. What exactly is happening for you? Does it throw an error or something?

Markus
Apr 10, 2014 at 9:43 PM

No. But since we upgraded to the last version if an action is just declared as IViewAction invalidateall does not work.



Apr 10, 2014 at 9:46 PM
But it still actually is a ViewAction? Or is it your own implementation of IViewAction?

Markus
Apr 10, 2014 at 11:30 PM

No it is a viewaction



Apr 11, 2014 at 9:35 PM
Hmmm.... OK. I will have to take a closer look then.

Markus
Jul 8, 2014 at 1:29 PM
FYI: In the next CODE Framework build, InvalidateCanExecute() is now part of IViewModel and thus the execution path for this has changed. So this should be fixed as well.


Markus
Jul 8, 2014 at 3:10 PM

Great news. Thanks