2016-05-18 97 views
0

假設有兩個實體表,即客戶和訂單具有以下字段: 客戶 - >編號,客戶名稱,的OrderId 命令中─>編號,客戶編號,ORDERNAME使用導航屬性

現在ODATA服務,以下關聯以及導航屬性也被定義即

"Customers" navigates ("Customer_Orders" as "HisOrders"); 
association "Customer_Orders" principal "Customers"("ID") multiplicity "1" 
dependent "Orders"("CustomerID") multiplicity "*"; 

在web應用,myview.xml存在具有3列的表格:客戶編號,客戶名稱,ORDERNAME。

我加入作爲items={/Customers} 對於列CustomerID和客戶名稱的行的結合中,我使用以下:{CustomerId} and {CustomerName}

但如何ORDERNAME列中的XML視圖本身結合?

+0

[如何從Odata Service的導航屬性獲取數據]的可能重複(https://stackoverflow.com/questions/44561056/how-to-get-the-data-from-navigation-property-of- OData的服務) – boghyon

回答

0

您必須使用OData $ expand才能獲得訂單實體以及客戶。我假設你的實體集被稱爲「客戶」和「訂單」(通常是CustomerSet和OrderSet)。

在一個XMLView中,你應該做某事。像這樣:

<Table items="{ 
     path: '/Customers', 
     parameters: { 
      expand: 'Orders' 
     } 
     }"> 

那麼你的列綁定是這樣:

{Orders/OrderName} 

我必須承認,我沒有這樣做,對於1:1的關係,但它應該基本上像這樣工作。如果它仍不起作用,請發佈您的代碼和metadata.xml。

BR 克里斯

1

試試這個方法:

<Label text="Order ID"/> 
<Text text="{OrderID}" objectBindings="{Customer_Orders}" /> 

在這裏,我假設"Customer_Orders"是NavigationProperty的名字和"OrderID"爲引導目標的屬性。