잘 모르겠습니다. 이 모든 정보를 서비스에 대한 단일 호출로 반환하려고하고이 모든 관계 (그리고 순환 가능성이있는 참조)가있는이 유형의 객체 그래프에 대해 데이터 계약이 무엇이 될지 궁금하십니까?
나는 최신 정보에 대한 질문에 대해 더 혼란 스러울 지 모르지만 나는 이것에 대해 마지막으로 한 가지를 짚어 보겠다. 더 혼란스러운 것은 "엔티티"라는 용어에 대한 참조입니다. EF 질문이 많습니까? 링크가 EF의 문제인 경우 코드 우선 접근 방법 만 사용한다고 가정 할 수 있습니다. 태그와 그룹을 연결하는 예는 다음과 같습니다. 당신이 당신의 클라이언트에서 프록시를 만들 것
public List<Group> GetGroups(string TagName)
{
List<Group> groups = (from g in _program.Groups where
(from t in g.Tags where t.Name == TagName select t).Count() > 0
select g).ToList();
return groups;
}
는 SOAP를 사용하는 경우와 서비스를 호출 :
public class Group
{
public Group()
{
Tags = new List<Tag>();
}
public string Name { get; set; }
public List<Tag> Tags { get; set; }
}
public class Tag
{
public string Name { get; set; }
}
특정 당신이 이런 일을 할 것입니다 Linq에를 사용하여 태그가 모든 그룹에 대한 조회하려면 이과 같습니다
string tagName = "rest";
List<Group> groups = proxy.GetGroups(tagName);
당신이 다음 간단한 HTTP 요청이 될 것 REST API를 작성하는 경우 :
http://server/api/GetGroups?tagName=rest
여기서 서비스는 그룹을 나타내는 XML 또는 JSON을 반환합니다.
귀하는 귀하의 서비스에 대한 운영 및 데이터 계약이 포함되어 있다고 가정하는 많은 인터페이스를 열거합니다. 엔티티별로 서비스를 중단 할 필요는 없으며 특정 작업 및 데이터 계약을 어디에 둘 것인지 혼란 스러울 수 있습니다. 서비스가 여러 엔터티에 대한 정보를 반환하면 서비스 전체에서 데이터 계약을 반복해야합니다. 엔터티에 의한 서비스 중단은 많은 이점을 제공하지 않으며 사용자와 서비스 사용자에게만 더 어려움을줍니다.
잘 모르겠습니다. 이 모든 정보를 서비스에 대한 단일 호출로 반환하려고하고이 모든 관계 (그리고 순환 가능성이있는 참조)가있는이 유형의 객체 그래프에 대해 데이터 계약이 무엇이 될지 궁금하십니까? –
@KevinJunghans : 답변으로 답하십시오. –