2013-04-17 102 views
3

我有2個POCO類 - 聯絡方式和TrainingSeminar - 在加入了許多一對多的關係,使用EF5的Web API的OData錯誤

在聯繫人的OData控制器,我希望能夠返回TrainingSeminars該聯繫人註冊了...所以我有以下控制器方法

public IQueryable<TrainingSeminar> GetTrainingSeminars([FromODataUri] int key) 
{ 
    var contact = _context.Contacts.Find(key); 
    var seminars = contact.TrainingSeminars.ToList(); 
    return seminars as IQueryable<TrainingSeminar>; 
} 

當我在Visual Studio調試,返回的對象「研討會」有2個項目,但我得到以下錯誤小提琴手: 「 'ObjectContent`1'類型未能序列化內容類型'application/json ....'消息的響應正文「:」無法序列化一個空'feed 「

我將不勝感激任何意見,建議

回答

4

從你的代碼,seminarsList<T>,因此最後一行

return seminars as IQueryable<TrainingSeminar>; 

將永遠是空的List<T>沒有實現IQueryable<T>。您應該使用,

return seminars.AsQueryable(); 

改爲。