我有一個WCF服務,我試圖用它來生成一個IEnumerable<IDictionary>
,然後根據此建立一個網格。問題將IEnumerable <IDictionary>通過WCF傳遞給Silverlight
返回的數據在服務器上的方法簽名是:
[OperationContract]
[FaultContract(typeof(GeneralServiceFault))]
IEnumerable<IDictionary> GetReport(string name, ReportingParameter[] parameters);
我用我的建設服務引用:
call "C:\Program Files\Microsoft SDKs\Silverlight\v4.0\Tools\slsvcutil.exe" http://localhost:8082/Service?wsdl /mergeConfig /config:..\ServiceReferences.ClientConfig /edb /namespace:"*,namespace.Service" /r:"c:\Program Files\Microsoft Silverlight\4.0.60129.0\System.Windows.dll"
此生成歸結爲一個服務引用:
public Dictionary<object, object>[] EndGetReport(IAsyncResult result)
是否有無論如何我可以得到這個與泛型IDictionary生成,所以我可以調用擴展方法找到here?或者如果不是,我該如何去做這件事?
你在字典中輸送什麼類型? WCF服務不知道它們,所以它不會在元數據中公開它們。因爲客戶端只期望'Dictionary
字典對象由使用DataReader類的GetValue()填充。這可以返回DataReader類可以返回的任何指定的clr類型。它不會返回我自己的任何類型。這些是否需要專門設置爲已知類型? – bobwah 2011-03-29 12:17:07