JsonApiDotNetCore 4.0 удалил BuildResourceGraph из JsonApiOptions. Какая замена? - PullRequest
0 голосов
/ 22 февраля 2020

Я мигрирую с. NET Core 2.2 на 3.1. При этом я обновил пакет JsonApiDotNetCore с версии 3.1 до 4.0.0 alpha 4.

В версии 2.2 я использовал JsonApiDotNetCore 3.1 и использовал BuildResourceGraph для добавления любых ресурсов API JSON в граф ресурсов. Код ниже:

IMvcCoreBuilder objMvcCoreBuilder = null;

objServices.AddJsonApi((objOptions) =>
{
    objOptions.BuildResourceGraph((objBuilder) =>
    {
        objBuilder
        .AddResource<Register>("registers")
        .AddResource<Client>("clients")   
        ;
    });
}, objMvcCoreBuilder);

Но я получаю следующую ошибку:

«JsonApiOptions» не содержит определения для «BuildResourceGraph» и не принимает доступный метод расширения «BuildResourceGraph», принимающий первый аргумент типа 'JsonApiOptions' может быть найден (вам не хватает директивы using или ссылки на сборку?)

Что заменит BuildResourceGraph?

1 Ответ

0 голосов
/ 22 февраля 2020

После просмотра истории фиксации JsonApiOptions.cs на Git я обнаружил изменение:

IMvcCoreBuilder objMvcCoreBuilder = null;

objServices.AddJsonApi(
    options => options.Namespace = "api/v1",
    resources: resources =>
                resources
                .AddResource<Register>("registers")
                .AddResource<Client>("clients")             
                ,
    mvcBuilder: objMvcCoreBuilder
);

Go в файле /NoEntityFrameworkExample/Startup.cs, и вы увидите разность, которая показывает изменение. Кроме этого, в примечаниях к журналу изменений в верхней части сайта есть только крипт c упоминание о переименовании BuildResourceManager.

https://github.com/json-api-dotnet/JsonApiDotNetCore/commit/7b8250bf5b9e64b91d8fa0357e915a1121eb6081#diff -d56ca61ff20d8be0b7cb20c9fd106d9f

Пересмотренная версия файла находится здесь:

https://github.com/json-api-dotnet/JsonApiDotNetCore/blob/7b8250bf5b9e64b91d8fa0357e915a1121eb6081/src/Examples/NoEntityFrameworkExample/Startup.cs

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...