RIA Services将属性列表<int>公开为IEnumerable <int> </int> </int>

时间:2011-11-25 18:58:53

标签: silverlight ria

我在RIA Services中使用了一个类,其类型为

List<int>

这是曝光为

IEnumerable<int>

任何原因导致RIA无法将其作为IList或仅列出?

IEnumerable不是要公开的预期接口。更糟糕的是,返回的类型是一个数组int [],当我在客户端转换为IList时,它是固定大小的,因此无法添加到。

有什么建议吗?

2 个答案:

答案 0 :(得分:1)

请发布您的财产声明的副本,或者您正在使用的对象的整个对象声明。另外我建议您使用IList而不是List,因为它更灵活,可能会在将来为您提供更好的可重用性。

答案 1 :(得分:0)

猜测为什么所有内容都被公开为IEnumerable而不是普通列表或数组是因为IEnumerable具有扩展的功能。

将IEnumerable转换为所有其他类型的列表 - 数组非常容易。 只需添加System.Linq命名空间,并在任何IEnumerable实例上使用.ToList()或.ToArray()扩展。