My biggest questions are why are you not using SoC with the MVC solution and why is the controller doing data access?
https://en.wikipedia.org/wiki/Separation_of_concerns
Why are you using datasets and datatables with a MVC solution, a Web based solution?
https://dzone.com/articles/reasons-move-datatables
MVC issues are addressed at the below forum.