2009-07-02 1 views
0

두 클래스가 있고 기본 키 속성의 이름을 "Id"(예 : Book 및 Publisher)로 지정해야한다는 요구 사항이 있다고 가정 해보십시오. 요구 사항은 회사의 코드 생성 객체를 사용하여 생성 된 방식을 변경할 수 없기 때문에 필요합니다. 이 클래스에는 외부 키가 있습니다. 게시자에게 예약하고 일대일 관계입니다.이 경우 각 도서에는 하나의 게시자 만 있습니다..Net Ria Services를 사용하여 동일한 키 ("Id")를 가진 개체와 어떻게 연관시킬 수 있습니까?

.Net RIA Services에서 Book.Publisher를 속성으로 사용하려면 속성을 추가해야합니다. 예를 들어 Book 클래스의 메타 데이터에서 :
[Key] public int Id; ... [포함]
[연관성 ("Book_Publisher", "Id", IsForeignKey = true)]
공개 Publisher Publisher 발행자 클래스 용 메타 데이터

:
[키]
공개 INT 이드;
... 내가 게시자를 얻기 위해 시도하는 클라이언트 코드에서

: 제작사 booksPublisher = Book.Publisher; 하지만 잘못된 게시자 (또는 null)가 표시됩니다. 데이터베이스를보고 나면 게시자 ID는 찾고있는 ID이며 게시자가 아닌 책의 ID입니다.

메타 데이터에 별칭을 추가 할 수 있습니까? 최신 버전의 RIA Services가이를 처리합니까?

감사합니다.

답변

0

그냥 추측 해 ...하지만 난 당신이 발행자 개체의 ID 필드에 책 필드에서 ID 필드를 키를하려고하기 때문에 문제가있는 것 같아요. 나는 그 책을 추측하고있다. 출판사가 아닌 그 책을 고유하게 식별했다.

Book 개체에 publisherId 또는 이와 비슷한 필드가 있습니까? 그렇다면 Book.publisherId = Publisher.Id를 사용하여 Book을 Publisher로 키잉해야합니다.

+0

작동시키기 위해 다른 키를 추가해야했습니다. [Association ("Book_Publisher", "BookId", "PublisherId", IsForeignKey = true)] 공용 게시자 게시자; – Aligned