2014-09-03 3 views
0

그래서 Azure 모바일 서비스에서 저장 프로 시저를 호출하는 방법에 대한 문서는 자바 백엔드가 here 인 것으로 나타났습니다. 하지만. NET 백엔드에 대한 설명서가 표시되지 않습니다. 이 기사에서 .NET 백엔드에는 완전히 다른 아키텍처가 있다고합니다..NET 백엔드가있는 Azure 모바일 서비스의 저장 프로 시저?

제 질문은 : 저장 프로 시저가 .NET 백엔드에서 어떻게 처리됩니까? 데이터베이스에 대한 ADO.NET 연결을 만들고 사용자 지정 API 메서드를 통해 저장 프로 시저에 대한 호출을 노출합니까? "GetStoredProcedure"컨트롤러 메소드와 같은 것이 있습니까? 또는 API가 저장 프로 시저처럼 작동합니까?

답변

0

글렌 Gailey이 질문에 HERE에 대한 매우 유용한 블로그 게시물을 썼다. MobileService에서 저장 프로 시저를 만들고 호출하는 데 도움이되었습니다.

1

.NET 백엔드는 ADO.NET을 사용하는 WebService의 구조 측면에서 볼 때 사용자 지정 모바일 서비스를 효과적으로 의미하지는 않습니다. 공개해야 할 기능을 수행하기 위해 API의 메소드를 노출합니다.

일반적으로 이러한 메서드는 GetCustomers, SaveCustomer, DeleteCustomer 등이며 해당 요구 사항을 충족시키는 적절한 구현을 제공합니다. 예를 들어, GetCustomers는 모든 고객을 반환하지만 다른 SQL 관련 작업이 될 수있는 저장 프로 시저를 호출 할 수 있습니다. 일반적으로 나와 같은 'GetStoredProcedure'와 같은 일반적인 방법은 없습니다.이 방법은 권장되지 않습니다. 예를 들어 소비자 (모바일 서비스)가 백엔드 DB와 직접 상호 작용하지 않고 적용될 비즈니스 로직/데이터 규칙을 가질 수 있습니다. 궁극적으로는 n 계층 시스템의 트레이드 오프이며, 많은 토론이 있습니다. 웹상에서,하지만 당신은 DB에 액세스의 종류를 폭로하고 싶지 여부의 측면에서 생각 ...

마지막으로, "API는 스토어드 프로 시저와 같은 역할을합니까?"글쎄, 이것은 다소 주관적입니다. 순수한 SQL의 관점에서 그들은 단일 엔트리 포인트를 통해 호출 될 수있는 T-SQL의 덩어리입니다. 웹 서비스 나 다른 .NET 지원 엔드 포인트를 통해 노출 된 메소드는 전반적인 질문과 더 관련이 있습니다. .NET의 범위에 의해서만 제한되므로 명확한 스토어드 프로 시저를 호출하고 제공 할 수 있습니다. 강력하게 형식화 된 객체 일 경우 파일/BLOB 작업이거나 원하는 모든 기술 작업 (수행 할 수있는 기능) 일 수 있습니다!

HTH

은 Microsoft 푸른 팀의
+0

이 설명은 정확합니다. 나는 당신이 여기서 쓴 것을 어떻게하는지에 대한 예를 들어 답했습니다. – WiteCastle