I've just completed such function in my own framework since the ASP.NET mvc does not support Gridview control and my project always have such kind of requirement(sorting, querying), would like to work with your team to apply this solution for you
The final solution would based on Entityframework/Linq to SQL, and also support page function, the sort is database side sort instead of memory sort