"only"
As history has proven, implementing support for any asp.net related framework as an ORM developer is a painful experience: not only do you have to do way more work than initially expected, it's also a process where you constantly have to play catch up and eventually have to deal with them abandoning the design for something 'better' and you have to decide whether you have to implement that new design too (so support 2 versions) or refactor the support for the new one and abandon the old one.
Hence my quotes around 'Only'.
I know these aren't your problems, and we shouldn't make them yours either, but they are part of our reality and what we've experienced with these frameworks coming out of Redmond on a regular basis.
I'm not looking forward to implementing support for this. It might look simple but sadly it's not. Their design works at times with interfaces (which we can deal with) and class requirements (which we can't, we can't derive from their base class). Perhaps we can find a way around that using a projection using a poco typed view.
However the next problem is tests. We don't have extensive asp.net core experience, so how to test this? The example contains just code of an example using the provider but I can't find any query in that chaos code. There are multiple folders, none of them are equal to the other, so apparently all combined they make 1 project? I can't find any code which performs database activity (so the code we have to replace). It's a lot but definitely not an example how to write your own storage provider
(afaics)
An example of that would have been "implement this interface on the provider. Implement these interfaces on the entity classes, that's it".
So in short: this documentation and the 'example' is, in one word, lacking. (Sorry Steve
). I don't see what to do as a data-access provider, and what to do with that result: do our users just reference a nuget package? Do they need to compile it from source? No idea.
There might be other examples out there, which are more descriptive, the thing remains that as this is security related, I really want to have tight tests.