Я новичок в веб-API ASP.NET и уже некоторое время изучаю это. По общему признанию, у меня паралич принятия решений. Я хочу создать REST-подобный API для системы с примерно 250 таблицами в базе данных. По сути, это двухуровневая система с пользовательским интерфейсом и уровнем доступа к данным, без использования бизнес-объектов или ORM.
Я не могу решить, должны ли мои контроллеры веб-API принимать / возвращать:
a) IDictionary пар имя / значение, которые я бы упаковал в параметры sql и передал на уровень доступа к данным и вернул сериализованную таблицу данных ado.net
б) строго типизированный сложный объект (объекты POCO). Например: класс учетной записи со всеми свойствами, соответствующими полям в базе данных.
Если бы мне пришлось создать классы POCO для каждой таблицы в системе, было бы более 250 классов, которые по сути ничего не делают, кроме упаковки данных и передачи их на наш уровень доступа к данным.
Кроме того, кажется, что мне нужно создать ApiController практически для каждой таблицы в базе данных, которую я хочу открыть через Web Api, потому что у вас есть только GET, POST, PUT, DELETE для каждого маршрута? Пожалуйста, помогите, бьется головой об стол.