2

現在、Simple.OData.Clientを使用してオブジェクトを取得するときに問題が発生しています。

のインスタンスを使用した呼び出しは次のとおりです。ODataClient

RecurringObjectView model = await client.For<RecurringObjectView>("RecurringObjects")
                                        .Key(id)
                                        .Expand(r => r.RecurrenceSetting)
                                        .FindEntryAsync();

API からのデータを追跡でき、すべて問題ありません。以下は、サーバーから返される Json の抜粋です。

{
    "RecurrenceSetting": {
        "@odata.type":"#Namespace.Of.The.DailyRecurrenceSettingView",
        "Id":16
        // more settings...
     }
     // more values...
}

問題は、RecurrenceSettingオブジェクトが抽象的であり、次のエラーが発生していることです...

RecurrenceSettingView既定のコンストラクターを持たない型のインスタンスを作成できません。

参考までに、クラス定義の抜粋を以下に示します...

public class RecurringObjectView
{
    public int Id { get; set; }

    public virtual RecurrenceSettingView RecurrenceSetting { get; set; }

    // loads more properties...
}


public abstract class RecurrenceSettingView
{
    public int Id { get; set; }

    // common recurrence setting properties...
}

public class DailyRecurrenceSettingView :
    RecurrenceSettingView
{
    // daily specific settings...
}
4

0 に答える 0