2013-03-13 2 views
3
우리는 다음과 같은 반환하는 WCF 서비스가

보고한다 결합 :편평 및 SSRS에 표시 WCF 서비스 결과 집합을

MessageContract 
    | 
    +-- List<TopLevelDataContract> 

TopLevelDataContract 
    | 
    +-- FirstChildDataContract 
    +-- SecondChildDataContract 
    +-- ThirdChildDataContract 

FirstChildDataContract 
    | 
    +-- FieldOne 
    +-- AnotherField 

SecondChildDataContract 
    | 
    +-- FieldTwo 
    +-- YetAnotherField 

ThirdChildDataContract 
    | 
    +-- FieldThree 
    +-- AndAnotherField 

적절 SSRS에서 이러한 datacontracts을 표시하기를, 우리가 같은 표 형태로 평평 할 필요가 다음 ElementPath 표현/XMLDP 쿼리이 우리를 벗어난있다 달성하기 그러나

+----------+--------------+----------+-----------------+------------+-----------------+ 
| FieldOne | AnotherField | FieldTwo | YetAnotherField | FieldThree | AndAnotherField | 
+----------+--------------+----------+-----------------+------------+-----------------+ 
... rows of data... 

.

  1. 는 상기 FirstChildDataContract 유형의 모든 "행을"가져옵니다 : 우리는 기쁨하지 않고 다음을 시도했습니다
 
<ElementPath IgnoreNamespaces="true"> 
    MessageContract{}/TopLevelDataContracts{}/TopLevelDataContract{}/FirstChildDataContract 
</ElementPath> 
  1. 이 모든 아이들을 얻을 수 있지만, 원시 XML 형식 :
 
<ElementPath IgnoreNamespaces="true"> 
    MessageContract{}/TopLevelDataContracts{}/TopLevelDataContract{@} 
</ElementPath> 
  1. 이 (1)과 동일하지 :
 
<ElementPath IgnoreNamespaces="true"> 
    * 
</ElementPath> 

가능한 경우,이를 위해 사용하는 ElementPath 정확한 표현은 무엇인가?

(제외 : 그리고 마이크로 소프트는 단지 대신 자신의 거의 -하지만 - - 아주 같은하지-XPath 쿼리 언어를 압연의, 잘 문서화 및 유연 XPath를 사용하지 않은 이유)

+0

와우, SSRS를 WCF에 바인딩 할 수 있는지조차 몰랐습니다. 잘했으면 잘 했어. SSRS는 주로 SQL, ODBC, Sharepoint, Raw XML을 염두에두고 만들어졌습니다. SSRS에 데이터 소스를 데이터베이스에 직접 저장하는 것과 관련된 보안 또는 오버 헤드 위험이 있습니까? 아니면 데이터베이스가 아닌 서비스가 보낸 데이터입니까? Visual Studio에서 직접 RDLC 파일을 사용하는 것이 WCF를 사용하고 일반 POCO 목록을 전달할 수 있다고 생각할 때 더 나은 방법 일 수 있습니다. SSRS를 사용하기 위해 취할 수있는 일의 양은 많을 수 있지만 다른 사람이 대답하면 매우 궁금합니다. – djangojazz

+0

WCF와 SSRS를 사용한 경험이 없지만 다른 것들을 파헤 칠만큼 충분히 궁금했습니다. 이 같은 접근 방식이 도움이 될까요? http://devblog.bardoloi.com/2011/09/using-wcf-web-services-as-data-source.html –

답변

0

I 이

http://msdn.microsoft.com/en-us/library/aa964129(SQL.90).aspx

을 읽은 '는

여러 부모 - 자식 계층은 지원되지 않습니다 밝혔다. 이 예에서 고객은 주문과 반품을 모두 보유합니다. 공급자는 하나의 집합 만 반환 할 수 있습니다. Orders 계층이 먼저 지정되었으므로 자동 파생으로이를 자동으로 해체합니다.

SSRS에 대해서는 잘 모르지만 여러 데이터 집합을 트릭으로 사용하려고 생각합니다. 가능한가?