1

WebApiConfig.cs に次のものがあると仮定します。

        modelBuilder.EntitySet<Content>("Content");
        modelBuilder.EntitySet<Area>("Area");

そして、私は次のクラスを持っています:

public class Area
{
    public string Id { get; set; }

    public ICollection<Content> Contents { get; set; }
}

public class Content
{
    public string Id { get; set; }

    [ForeignKey("Area")]
    public int? AreaId { get; set; }
    public virtual Area Area { get; set; }
}

次のルートにバインドされる ODataController アクション メソッドを作成するにはどうすればよいですか?

GET /odata/Area(Id)/Content(Id)

カスタム ルーティング規則を作成しようとすると、次の ODataPath が取得され続けます。

"~/entityset/key/unresolved"

そして私はこれを取得しようとしています:

"~/entityset/key/navigation/key"

注: v4 OData の v6.0.0 を使用しているため、ルーティングの一部が以前のバージョンから変更されています。

4

1 に答える 1

0

ContentURLの名前/odata/Area(Id)/Content(Id)は、クラスのナビゲーション プロパティの名前と一致する必要がありますArea。質問のクラスでは、それは呼び出されますContents

于 2017-01-11T14:58:25.673 に答える