3

EF5 を使用して多対多の関係で参加する 2 つの POCO クラス (Contact と TrainingSeminar) があります。

連絡先の 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 つの項目がありますが、Fiddler で次のエラーが発生します。

「'ObjectContent`1' タイプは、コンテンツ タイプ 'application/json...."message" の応答本文をシリアル化できませんでした:"null の 'feed' をシリアル化できません

4

1 に答える 1

4

あなたのコードからseminarsは、List<T>したがって最後の行です

return seminars as IQueryable<TrainingSeminar>;

List<T>は実装しないため、常に null になりますIQueryable<T>。あなたが使用している必要があります、

return seminars.AsQueryable();

代わりは。

于 2013-04-17T18:21:12.737 に答える