Can you make the "public async System.Threading.Tasks.Task<T> SaveAsync()" a virtual function?
I will look at that.
I have been looking through some of the things we've made virtual, and not all are correct.
For example, some of the Save overloads ultimately call Save(bool). We've made several virtual, which means you can't tell which one to override to _really_ override the behavior in all cases. In reality, there's exactly one Save you need to override to globally change the desired behavior, and overriding the others is almost certainly bug-prone...
It is possible SaveAsync is a complete copy of Save, but I hope not - I need to look at the code to be sure.
Copyright (c) Marimer LLC