2012-07-04 2 views
1

우리는 새로운 엔터프라이즈 응용 프로그램에 대한 작업을 시작하고 현재 기술 스택을 고려 중입니다.엔터 프라이즈 시스템에서 EntityFramework를 경계로 사용

.Net/SQL Server가 될 것입니다. 우리 모두 알고있는 것입니다.

응용 프로그램은 웹, 데스크톱 WPF, 모바일과 같은 다양한 플랫폼에 대해 서로 다른 UI를 갖게됩니다. 왜냐하면 우리는 비즈니스/데이터 로직을 수용하기 위해 WCF 서비스를 만들려고했기 때문에 각 UI가 단지 같은 논리를 호출 할 수 있습니다 .

우리는 또한 Entity Framework Code First를 사용하고 싶습니다. 그러나 이전에 우리가 시도한 적이있는 EntityFramework는 변경 사항 추적이 손실되고 수동으로 작업을 시작해야하는 등 경계를 넘어 엔티티를 전달하기 시작한 적이 없었습니다. 엔터티를 업데이트하고 변경된 하위 엔터티를 확인하는 방법

WCF/EntityFramework의 최신 버전에서 이러한 문제가 해결 되었습니까? 이 과정을 쉽게하기 위해 우리가 볼 수있는 예제 나 패턴이 있습니까? 아니면이 시나리오에서 EntityFramework를 피해야할까요?

+0

도메인 경계를 넘어 활성 엔터티를 전달하는 이유는 무엇입니까? –

+0

어쩌면 내가이 잘못 찾고 있어요하지만 데이터를 가져올 데이터베이스에서 책 개체를 말하고 내 웹 응용 프로그램에서 GetBook 호출 할 것이라고 WCF 서비스에서 내 엔터티를 다시 얻으려면 WebApp 변경 수정 된 서적 개체를 전달하는 WCF 서비스에서 SaveBook을 호출하십시오. – Gavin

+1

WCF 서비스가 데이터베이스의 프록시 역할을하도록하려는 것 같습니다. 그렇다면 왜 서비스가 필요합니까? 권한 및 유효성 검사와 같은 서비스에서 단순한 것보다 더 많은 논리를 수행하고 있다면 엔티티 전역 저장 메서드를 직접 호출하고 싶지 않을 것이므로 UpdateTitle 메서드를 호출하는 것이 좋습니다. 또한 정말 꽉 커플 링을 생산으로 2 도메인 경계를 넘는 모델에 동의하지 IsDeleted 열을 추가하면 그 모든 다른 시스템에 propogated 싶습니다? –

답변

0

WCF/EntityFramework의 최신 버전에서 이러한 문제가 해결 되었습니까? 이 프로세스를 쉽게 수행하기 위해 을 볼 수있는 예제 나 패턴이 있습니까? 아니면이 시나리오에서 EntityFramework를 피해야합니까?

아니요. EF를 사용하지 않고 WCF와 SQL을 직접 사용한다면 WCF는 클라이언트에서 어떤 데이터가 변경되었는지 어떻게 알 수 있습니까? 예, 데이터에 추가 정보를 전달하거나 데이터베이스의 현재 상태를 확인하여 메커니즘을 구현해야합니다. 이 변경 감지를 클라이언트로 이동하지 않으면 EF에도 동일한 접근 방식이 필요합니다.

변경 내용 검색을 클라이언트로 옮기는 것이 만족스럽고 서비스 계층이 데이터베이스에 대한 게이트웨이와 더 비슷하다면 WCF Data Services를 사용하십시오 - 경계를 넘어서 변경 추적을 처리하지만 클라이언트 응용 프로그램은 WCF 데이터 서비스 생성 된 클라이언트.

관련 문제