2
如果我定義了一個測試對象,用繩子和日期時間屬性,並使用它在WCF的IEnumerable <T>作爲返回類型WCF方法
[OperationContract]
IEnumerable<Test> GetTestNotes();
返回的IEnumerable(T)採集和調用來自客戶端的服務時,我看到它正在將IEnumerable轉換爲Test []:
public Test[] GetTestNotes() {
return base.Channel.GetTestNotes();
}
而且我能夠獲取數據。
問題是:使用IEnumerable(T)接口而不是具體的List(T)有多可靠?
我的客戶端使用這些WCF服務不僅在.NET中,而且在JAVA中。
有關配置服務參考選項的相關信息。我實際上想知道如果使用IEnumerable(T)會在以後給我任何序列化問題。在我簡單的概念驗證中,它使用.Net客戶端(控制檯應用程序)即時運行正常。但想知道IEnumerable(T)是否適用於Java Client? – sunny24365
@ sunny24365在內部,該服務使用SOAP(XML)序列化。您在界面上聲明的類型純粹是爲了客戶的利益。 WCF足夠聰明,可以按照服務期望的方式序列化一個「IEnumerable」。 –