Недавно я испытал некоторый шок, когда подумал об объединении сервис-ориентированной архитектуры с великолепным пользовательским интерфейсом, который использует SQL для оптимизации производительности при запросе данных.
Сетка DevExpress для ASP.NET , например, настолько хорош, что делегирует всю логику фильтрации, сортировки и разбиения на страницы серверу базы данных. Но это предполагает, что данные получены с сервера базы данных, поддерживающего SQL.
Что, если я хочу ввести уровень веб-службы между слоями базы данных и пользовательского интерфейса, а пользовательский интерфейс будет использовать веб-службы для запроса данных?
List QueryData (string sqlQuery)
и самостоятельно анализировать строку SQL, чтобы гарантировать безопасность / ограничение доступа? Это должно быть очень распространенная проблема, и я уверен, что она уже решена относительно адекватно, имеет это?
В основном меня интересуют решения на основе .NET / C # или совместимые с ними.
Изменить: Я нашел OData и Microsoft WCF Data Services. Если я правильно понял, -) Трудно решить, какой ответ принять, потому что все кажутся мне одинаково хорошими ...