We are using Dapper and Dapper.Contrib in our application. We choose Dapper because it is faster and speed is everything to us due to heavy load. And now it seems "Change tracking of fields" is vital for us. And for now Dapper.Contrib creates update query which sets all fields always and such queries make them slower. Some tables now have ~30 columns and fully updating rows in that tables are very inefficient.
As I see Dapper.Contrib has Change tracking per object, but Change tracking per field is not introduced to the library.
I did a research very carefully and find out that no work is done in that area. That luckless research confused me. I would like to hear your thoughts:
- If such extension is not implemented then may be it is not useful? What I am missing here?
- Please put yourself into my shoes. What would you do? Move to EF or introduce "Chnage tracking" to Dapper.Contrib?
- May be adding such feature will make Dapper slow and that's why that feature is not implemented yet?