2010-07-12 1 views
0

Entity Framework (WCF RIA 도메인 모델이 이에 기반 함)에 관한 질문 일 수 있지만 확실하지 않습니다 ...Silverlight + WCF RIA + Child-Parent-ReferenceBook => UI 측에서 ComboBox를 올바르게 채우는 방법

그래서 Silverlight UI (MVVM) + WCF RIA 도메인 서비스 + 엔터티 프레임 워크가 서버쪽에 있습니다.

데이터 엔티티가 있습니다. 객실 -> 호텔 (부모 엔티티) < - RoomTypes plus Room에 객실 유형에 대한 참조가 있습니다 (예 : 싱글 룸 또는 트윈 또는 더블 등). 그리고 한 호텔에는이 호텔에서 사용되는 방 유형 세트가 포함되어 있습니다.

문제 - UI 쪽에서 사용자 컨트롤을 만들었습니다 - 방 편집기. 거기에 텍스트 상자 (텍스트 상자 및 데이터 바인딩에 아무런 문제가 없습니다) 및 또한 거기에 콤보 상자 - 룸 방 유형을 편집 할 수 있습니다. 나는 이런 식으로 일하는 올바른 방법이 무엇인지 알 수 없다 ... 제발 도와주세요!

내가 지금 가지고있는 것 - 룸 유형이있는 호텔 (도메인 메타 데이터 - [Include] 속성을 통해)과 this.ObjectContext.Hotels.Include ("RoomTypes")를 WCF RIA 서버 측 도메인 클래스로로드하려고했습니다. comboBox에 방 유형 목록에 바인드하십시오. 그러나! "Entity 'RoomType'은 이미 다른 EntityContainer에 연결되어 있기 때문에 Entity 'RoomType'을이 EntityContainer에 연결할 수 없습니다. ... 호텔은 별도의 도메인 서비스 및 객실 유형 (사용자 정의 컨트롤)에서로드됩니다.) 자신의 도메인 서비스에 의해로드됩니다. 어떻게 해결할 수 있습니까?

미리 감사드립니다.

+0

이 경우 일 수 있습니다. 객체는 한 번에 하나의 RIA 컨텍스트에서만 "라이브"할 수 있습니다. 여기에 RoomTypes가 여러 컨텍스트에있는 것처럼 보입니다. 실행해야하는 경우 riacontext에 객체를 분리하거나 연결할 수 있습니다. 두 개 이상의 도메인 서비스를 사용하면 안됩니다. – Einarsson

답변

1

이 글의 두 번째 요점은 현재 다루고있는 문제를 다루고 있습니다.

http://blogs.msdn.com/b/kylemc/archive/2010/06/18/combobox-sample-for-ria-services.aspx

정확하게 당신이 객실과 같은 DomainContext에서 RoomTypes (당신이 ComoboBox에 사용 특히 RoomTypes)을로드하고 있는지 확인해야합니다,이 연결을 설정합니다. 그 라인을 따라 비동기 적으로 조회를 채울 때 유용한 게시물의 세 번째 요점을 찾을 수 있습니다.

카일

0

Einarsson, 카일 - 당신 답변 감사합니다!

객실 유형 목록이있는 호텔은 아직로드 중이지만 어제는 단일 도메인 데이터 소스로 이동하기로 결정했으며 이것이 내가 찾는 것 같습니다. 이를 통해 호텔과 관련된 모든 항목을 하나의 DDS (즉 모든 항목에 대한 하나의 도메인 컨텍스트)로 저장할 수 있습니다. 이제 로딩을 담당하는 하나의 DDS는, 모든 엔티티, 호텔 관련 및 작동의 절약

이 WCF RIA 내 첫 경험 :

입니다 (난 그냥 데이터 바인딩과 관련된 몇 가지 문제를 해결해야한다) 그리고 다시 - 답변 해 주셔서 감사합니다!

관련 문제