2011-09-01 3 views
0

두 개체 사이의 관계를 설명하는 방법이 필요하며 내가 가지고있는 옵션이 확실하지 않습니다.코드에서 사용할 개체 간의 관계 설명

저는 IEnumerable<IResource>이며, 각 IResource은 부양 가족의 성질을 가지고 있습니다.

public interface IResource 
{ 
IEnumerable<IResource> DependentResources{get;set;} 
} 

각 리소스에는 0 개 이상의 종속 리소스가있을 수 있으며 리소스와 해당 종속 관계는 하드 또는 소프트 중 하나 일 수 있습니다.

하드/소프트 관계에 대한 정보를 저장할 위치가 확실하지 않습니다. 관계 유형을 자원에 저장하는 것이 이상하게 보입니다. 유용 할 수 있습니다

일부 추가 정보 :

나는 가능한 모든 자원의 IEnumerable<IResource>으로 처음에 시작합니다. 이 컬렉션의 항목에는 다른 리소스와의 관계에 대한 지식이 없습니다.

사용자가 주어진 리소스의 종속 리소스를 요청하면 웹 서비스 호출이 생성되어 Guides 컬렉션이 다시 나타납니다. 이 guid 목록에서 원래 AllResources 컬렉션에서로드 된 종속 항목과 함께 해당 리소스를 반환합니다.

DependencyTypeEnum.DependencyType ContextualRelationship{get;set;} 

또는 별도의 컬렉션 소프트/하드 종속성을 저장하지만,이에 대한 더 나은 방법이 있는지 궁금 해요 :

나는 같은 자원의 속성을 가질 수있다.

+0

하드 및 소프트 관계, 당신의 일부 사용자 지정 속성입니까? 아니면 어떤 개념입니까? – Tigran

+0

하드/소프트 개념은 우리가 상호 작용하는 Altiris 시스템의 일부입니다. 나는 리소스와 종속성의 다이어그램을 생성하고 있으며 서로의 하드/소프트 종속성을 구별해야합니다. –

답변

1

종속성이 자원 및 하드/소프트 특성을 알 수 있도록 변경하려고 생각하십니까?

public interface IDependency 
{ 
    IResource Resource { get; } 
    DependencyType Type { get; } 
} 

public interface IResource 
{ 
    IEnumerable<IDependency> Dependencies { get; set; } 
} 
+0

감사합니다. 그게 훨씬 더 의미가 :) –

관련 문제