WCF数据服务操作返回同一对象的集合

时间:2014-03-01 18:13:36

标签: linq-to-entities odata wcf-data-services service-operations

我正在使用带有EF 4的WCF数据服务5.0(v3)。在我的配置下面有一个操作“GetProducts”:

public static void InitializeService(DataServiceConfiguration config)
    {
        config.DataServiceBehavior.MaxProtocolVersion = DataServiceProtocolVersion.V3;
        config.SetEntitySetAccessRule("*", EntitySetRights.All);
        config.UseVerboseErrors = true;
        config.SetServiceOperationAccessRule("GetProducts", ServiceOperationRights.All);
    }

假设我的实体数据模型有一个类[Product],其字段[Id]为整数,[Price]为十进制。 我的WCF DataService操作应该返回[Product]对象的集合。

[WebGet]
public IQueryable<Product> GetProducts()
{
 var productList = new List<Product>();

 //add 4 Products with different Price
 productList.Add(new Product { Price = 50.00m });
 productList.Add(new Product{ Price = 333 });
 productList.Add(new Product{ Price = 2255 });
 productList.Add(new Product{ Price = 55.7m });

 return productList.AsQueryable();
}

我的WCF操作应该返回4个对象,每个对象应该有不同的价格。 然后我在客户端调用WCF操作(WinForms app / .Net 4.0)。 但是在客户端,我有一个相同价格的相同对象集合(来自最后一个对象的价格)。

可能导致此行为的原因是什么?

0 个答案:

没有答案