일반적으로
- 웹 서비스 수준은 여러 응용 프로그램에 대한 공통 데이터 요청의 재사용을 촉진합니다.
- 웹 서비스는 애플리케이션 레벨 개발에서 발생하는 많은 문제를 완화하는 버전 관리로 설정할 수 있습니다. 예를 들어 기존 애플리케이션을 처음 사용하는 경우 기존 데이터베이스 소스를 사용하도록 애플리케이션을 구성하는 데 좋은 모델로 사용합니다.
- 웹 서비스는 간단한 URI를 사용하여 요청을 보내고 응답 결과를 JSON과 같은 일반적인 형식으로 되 돌리는 유연한 옵션을 허용하도록 발전했습니다. 즉, 신뢰할 수있는 균일 한 인터페이스를 장려하는보다 일반적인 표준을 사용하여 클라이언트 응용 프로그램을 개발할 수 있습니다.
ASP.NET Web Api에 관심이 많고 데이터 서비스를 먼저 만들 계획입니다.
저는 최근 엔터티 프레임 워크를 사용하여 .NET MVC 웹 응용 프로그램에 집중하고 있습니다.
- 이미 MVC를 사용하고 있다면 Web Api는 Api 컨트롤러와 함께 MVC도 사용하므로 서비스 구축을위한 학습 곡선이 상당히 어렵지 않습니다.
저는 최근에 Oracle 저장 프로 시저를 기반으로 구축하고 있던 MVC 웹 앱으로 인해 좌절감을 느꼈습니다. 웹 구성 연결 및 TNS 이름을 기반으로 사용할 올바른 dll 파일을 찾는로드 시간 어셈블리를 사용하여보다 현대적인 연결 팩토리 접근 방식을 추진하는 Visual Studio 2012의 또 다른 문제를 제시 한 Oracle 9 또는 이전 버전의 원래 버전.
데이터베이스에 대한 연결 시도가 '더 이상 지원되지 않음'오류 메시지와 함께 실패했습니다. 호기심으로 Oracle 12c를 다운로드하고 TNS 이름과로드 어셈블리 dll과 잘 작동하는 애플리케이션 수준 연결을 만들었고 문제없이 Oracle과 작업 할 수있었습니다.
이전 Oracle 버전에 대한 연결로 작동하는 일부 웹 서비스가 구축되었습니다. 그러나 실망스럽게도 선택된 테이블에 특별히 매핑 된 방법으로 구축되었습니다. 나는 직접 써야 할 것입니다.
Oracle 데이터베이스를 유지 관리하는 그룹은 클라이언트 인터페이스와 비즈니스 논리 계층을 추상화하는 데 사용하던 이전 저장 프로 시저를 대체하기 위해 새 저장 프로 시저를 작성할 것이라고 들었습니다.
그래서 첫 번째 생각은 드롭 다운 목록 채우기 또는 엔터프라이즈 급 데이터로 자동 완성과 같은 모든 일반적인 데이터 요청이 Oracle 저장 프로 시저를 호출하는 데이터 서비스를 통해 수행된다는 것입니다. 각 애플리케이션에 대해이 프로세스를 반복하고 각 개발자가 구성 및 버전 /로드 어셈블리, TNS 문제로 어려움을 겪게하는 이유는 무엇입니까?
그래서....
- 일반적으로 SQL Server 데이터 사용을 위해 EF를 사용하는 .NET MVC 애플리케이션에서 Oracle 저장 프로 시저를 사용하는 것과 같은 여러 데이터베이스 서버 문제의 경우 이러한 문제를 이러한 구성 문제를 격리 할 수있는 Web Api 서비스 방법으로 밀어 넣는 것이 좋습니다.
- 클라이언트 인터페이스는 Web Api를 사용하여 SQL Server 데이터를 요청하는 경우 이미 사용중인 JavaScript, JQuery 및 JSON을 사용하여 수행 할 수 있습니다.
저는 DBA가 아닌 응용 프로그램 개발자 / 분석가이므로 데이터베이스 도구가 발전 할 때 응용 프로그램을 지속적으로 수정해야하는 끊임없는 좌절감을 경험 한 경험에서 비롯된 것입니다.