В загальному
- Рівень веб-сервісу сприяє повторному використанню загальних запитів даних для кількох програм
- Веб-службу можна налаштувати за допомогою управління версіями, яке відбиває багато проблем, що виникають при розробці рівня додатків. Наприклад, якщо я новачок у проекті, який існуючий додаток я використовую як гарну модель для налаштування мого додатка на використання існуючих джерел баз даних.
- Веб-служба еволюціонувала, щоб дозволити гнучкі варіанти надсилання запитів та отримання результатів відповідей у загальному форматі, такому як JSON, за допомогою простого URI, що означає, що клієнтські програми можуть розроблятися за допомогою більш загального стандарту, який заохочує надійні єдині інтерфейси.
Я просто вдивляюся в ASP.NET Web Api і планую зробити послуги передачі даних першими.
Нещодавно я зосередився на веб-програмах .NET MVC із використанням сутності.
- Якщо ви вже використовуєте MVC, веб-Api також використовує MVC з контролером Api, тому крива навчання для побудови послуг досить безболісна.
Нещодавно я опинився у неприємному становищі через веб-програму MVC, яку я спочатку створював на основі збережених процедур Oracle. Оригінальна версія, як Oracle 9 або навіть раніше, яка представляла ще одну проблему з Visual Studio 2012, що висуває більш сучасний підхід до фабричних підключень із збірками часу завантаження, які знаходять потрібні файли DLL для використання на основі підключень веб-конфігурації та імен TNS.
Спроби підключитися до бази даних не вдались із повідомленнями про помилки "більше не підтримуються". З цікавості я завантажив Oracle 12c і встановив кілька підключень на рівні додатків, які чудово працювали з моїми іменами TNS та навантаженням dll, і я зміг працювати з Oracle без проблем.
Було побудовано кілька веб-служб, які працювали з підключеннями до попередньої версії Oracle. Вони були побудовані з використанням методів, спеціально відображених у вибраних таблицях, проте, на моє розчарування. Мені довелося б написати своє.
Мені сказали, що група, відповідальна за підтримку баз даних Oracle, буде писати нові збережені процедури для заміни старих, які я використовував для абстрагування клієнтського інтерфейсу та рівнів бізнес-логіки.
Отже, моїми першими думками було те, що всі загальні запити на дані, такі як заповнення випадаючого списку або автоматичне заповнення даних загального масштабу, здійснюються через служби даних, які викликають збережені процедури Oracle. Навіщо повторювати цей процес для кожного додатка, і кожен розробник бореться з конфігурацією та складанням версії / завантаження, проблемами TNS?
так....
- Для кількох проблем із сервером баз даних, таких як використання процедур Oracle, що зберігаються у програмі .NET MVC, яка, як правило, використовує EF для використання даних SQL Server, чому б не перенести ці головні болі до методів служби Web Api, де ці проблеми з конфігурацією можна виділити.
- Знову взаємодія з клієнтом може бути здійснена за допомогою JavaScript, JQuery та JSON, які ви вже використовуєте, якщо робите це за допомогою Web Api для надсилання запитів даних SQL Server.
Я розробник додатків / аналітик, а не адміністратор баз даних, тому моя перспектива полягає в досвіді з нескінченним розладом необхідності постійно змінювати програми, коли інструменти баз даних розвиваються.