c# - 为什么 WCF 会像我预期的那样返回 myObject[] 而不是 List<T>?

标签 c# wcf collections

我正在从我的 WCF 方法返回一个列表。在我的客户端代码中,它的返回类型显示为 MyObject[]。我必须使用 MyObject[]、IList 或 IEnumerable...

WCFClient myClient = new WCFClient();

    MyObject[] list = myClient.GetMyStuff();
or
    IList<MyObject> list = myClient.GetMyStuff();
or
    IEnumerable<MyObject> list = myClient.GetMyStuff();

我所做的就是获取此集合并将其绑定(bind)到网格。分配我返回的集合的最佳对象是什么?

最佳答案

您可以通过在添加引用时单击高级按钮来指定要使用通用列表而不是数组,或者您可以右键单击服务引用并选择配置以就地更改它。

原因是 WCF 将通用列表序列化为数组以通过网络发送。该配置只是告诉 svcutil 创建一个代理,为您的方便将它们转换回通用列表。

关于c# - 为什么 WCF 会像我预期的那样返回 myObject[] 而不是 List<T>?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/493376/

相关文章:

c# - 将 List<T> 转换为包含另一个 List<T> 的另一个 List<T>

c# - 为什么在不修改枚举集合时得到 "Collection was modified; enumeration operation may not execute"?

wcf - 在 WCF 服务中将多个 cookie 添加到响应的问题

java - 检索最小元素,元素是动态排序的

c# - 我需要一个可以引用超过 7000 万个 texture2d/vector2 对象集的容器

java - Array 与 ArrayList 的性能

c# - 枚举的变量总是被初始化?

c# - Entity Framework (实体类)序列化

asp.net - .NET SOAP Web 服务返回 JSON

asp.net - Silverlight 4 和 ASP.NET 的 WCF 故障异常