0

건축 관련 질문이 있습니다. 우리 회사에는 많은 응용 프로그램이 있으며 향후 프로젝트에서 ASP.NET MVC 및 Entity Framework를 사용할 계획입니다. 우리가 구현해야 할 다음 프로젝트는 중앙 인증/인증 시스템입니다. 현재 제출되지 않은 이유로 기존 옵션을 사용할 수있는 옵션이 없습니다. 이 시스템은 아마도 서비스로 구성 될 것입니다. 우리가 알지 못하는 것은 다른 응용 프로그램이이 인증/인증 시스템의 "모델"에 대해 어떻게 알 수 있습니까? 사람들, 역할 등을 어떻게 알게 될까요? 가장 좋은 방법은 무엇입니까? 동료 중 한 명은 클래스 라이브러리에 엔터티 프레임 워크 모델 (.edmx)을 만들 것을 제안했습니다. 문제는이 경우 인증/인증 시스템에 액세스 할 모든 프로젝트에 대해이 dll을 복사해야한다는 것입니다. 좋은 해결책입니까? 아무도 더 좋은 아이디어가 있습니까?내 모델에 DLL을 적용하지 않고도 내 모델에 액세스 할 수있게 만드는 방법

답변

0

DSO가 이미 말한 것에 추가하기 만하면 표준적인 방법은 Visual Studio의 "서비스 추가 참조"대화 상자를 사용하는 것입니다. 웹 서비스를 쿼리하고 필요한 클래스를 찾아서 reference.cs 파일에 넣습니다. svcutil.exe (또는 Silverlight, SLSvcUtil.exe를 사용하는 경우)를 사용하여 동일한 작업을 수행 할 수도 있습니다. 웹 서비스의 인터페이스를 변경할 때마다 reference.cs 파일을 재생성해야하지만 대개 몇 초 밖에 걸리지 않습니다.

응용 프로그램의 다양한 레이어간에 앞뒤로 공유 할 수있는 별개의 데이터 전송 객체 집합을 만들 수도 있지만 아키텍처 요구 사항이 매우 까다로운 경우가 아니라면 자동 생성 된 수업은 합리적으로 잘 작동합니다.

EF 4.0에서 사용할 수있는 자체 추적 엔티티에 대한 내용은 여기 (http://msdn.microsoft.com/en-us/magazine/ee335715.aspx)를 참조하십시오.

3

서비스를 SOAP 기반 웹 서비스로 구현할 수 있습니다. 즉, 데이터 모델 및 메소드가 SOAP을 통해 노출되고 WSDL을 사용하여 설명됩니다. 웹 서비스는 클래스 라이브러리를 배포 할 필요없이 모든 언어에서 사용할 수 있습니다.

많은 언어에는 SOAP 인터페이스의 WSDL 설명 (예 : .NET 클라이언트의 경우 wsdl.exe)을 기반으로 클라이언트 측 클래스 래퍼를 자동 생성하는 도구가 있습니다.

관련 문제