2010-10-03 91 views
6

我想從我的WCF數據服務返回自定義類。我的自定義類是:無法從WCF數據服務返回自定義類

[DataServiceKey("ID")] 
public class Applist { 
    public int ID { get; set; } 
    public string Name { get; set; } 
} 

我的數據服務看起來像:

public static void InitializeService(IDataServiceConfiguration config) 
{ 
    config.RegisterKnownType(typeof(Applist)); 
    config.SetEntitySetAccessRule("*", EntitySetRights.All); 
    config.SetServiceOperationAccessRule("GetApplications", ServiceOperationRights.AllRead); 
} 

[WebGet] 
public IQueryable<Applist> GetApplications() { 
    var result = (from p in this.CurrentDataSource.Applications 
      orderby p.ApplicationName 
      group p by p.ApplicationName into g 
      select new Applist { ID = g.Min(p => p.id), Name = g.Key }); 

    return result.AsQueryable(); 
} 

然而,當我運行的服務,它給了我一個錯誤:

Request Error Request Error The server encountered an error processing the request. 
The exception message is 'Unable to load metadata for return type 
'System.Linq.IQueryable`1[ApplicationService.Applist]' of method 
'System.Linq.IQueryable`1[ApplicationService.Applist] GetApplications()' 

同樣的查詢完美運行在LINQPad中很好。

+0

更名爲WCF數據服務在一年前.... – 2010-10-03 19:06:07

+0

是否使用WCF數據服務使用VS 2010和ADO.Net數據服務在VS 2008 SP1有差別? – Ashish 2010-10-05 04:42:15

+0

你有沒有得到任何解決方案? – genericuser 2011-08-02 21:30:14

回答