2014-05-22 60 views
0

我有一個不是簡單類型的成員的類型。例如,.net odata.metadata不顯示爲成員類型

class Person 
{ 
    int a; 
    Pmetadata personInfo; 
} 

類型被返回作爲在ODataController(的WebAPI框架)的響應。在響應JSON從控制器返回,根對象具有「odata.metadata」裝飾,但對象personInfo不具有「odata.metadata」裝飾。 我試圖用一個電話如下添加型Pmetadata到EntityModel,

odatamodelbuilder.EntitySet<Pmetadata>("PersonMetadata"); 

,但它並沒有幫助。

是什麼原因導致odata.metadata出現?

回答

0

加$格式,以您的請求的URL可能會解決您的問題:

GET ~/Products?$format=application/json;odata=fullmetadata 

有這兩個請求之間的差異,請試一試:

  1. http://services.odata.org/v3/OData/OData.svc/Products $格式=應用程序/ JSON ;?的OData = nometadata
  2. http://services.odata.org/v3/OData/OData.svc/Products $格式=應用/ JSON;的OData = fullmetadata
+0

如果將Pmetadata添加爲實體類型,則需要使用$ expand來顯示它:〜/ Persons?$ expand = personInfo –