2010-10-03 12 views
6

Próbuję zwrócić niestandardową klasę z mojej usługi danych WCF. Mój zwyczaj klasa:Nie można zwrócić niestandardowej klasy z usługi danych WCF

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

moja usługa danych wygląda następująco:

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(); 
} 

Jednak kiedy uruchomić usługę, to daje mi błąd:

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()' 

Ta sama kwerenda działa doskonale dobrze w LINQPad.

+0

Przemianowany do WCF Data Services rok temu .... –

+0

Czy za pomocą WCF Data Services z VS 2010 i ADO.NET Data Services z VS 2008 SP1 robi różnicę ? – Ashish

+0

Czy masz jakieś rozwiązanie? – genericuser

Odpowiedz

Powiązane problemy