IAsyncPolicy<> не может преобразовать тип ⇐ C#
-
Гость
IAsyncPolicy<> не может преобразовать тип
У меня есть следующий интерфейс IResponse
И у меня есть несколько классов, которые наследуются от этого IResponse.
Например:
публичный интерфейс IResponse { } публичный класс MyResponse: IResponse { } публичный класс My SecondResponse: IResponse { } Я создал политики Polly для них обоих. И у меня есть общий метод.
например, PerformAction()
Проблема в том, что я хочу получать политику динамически при вызове этого универсального метода.
частный только для чтения IAsyncPolicy _responseResiliencePolicy; частный только для чтения IAsyncPolicy _ SecondResiliencePolicy; . . . частный IAsyncPolicy GetResiliencePolicy(тип типа) => переключатель типа { Введите t, когда t == typeof(MyResponse) => _responseResiliencePolicy, Введите t, когда t == typeof(MySecondResponse) => _ SecondResponseResiliencePolicy, _ => выдать новое исключение InvalidOperationException («Неверный тип, как для TResponse») }; политика вар = GetResiliencePolicy (typeof (TResponse));
Я получаю сообщение об ошибке «Невозможно преобразовать», и мое приложение не компилируется. Не могли бы вы помочь мне, почему это не удается? И как это исправить?
CS0029 Невозможно неявно преобразовать тип Polly.IAsyncPolicy в Polly.IAsyncPolicy Infrastructure.Repositories C:\Users\Panos\source\Infrastructure.Repositories \SomeRepository.cs 61 Активен
У меня есть следующий интерфейс IResponse
И у меня есть несколько классов, которые наследуются от этого IResponse.
Например:
публичный интерфейс IResponse { } публичный класс MyResponse: IResponse { } публичный класс My SecondResponse: IResponse { } Я создал политики Polly для них обоих. И у меня есть общий метод.
например, PerformAction()
Проблема в том, что я хочу получать политику динамически при вызове этого универсального метода.
частный только для чтения IAsyncPolicy _responseResiliencePolicy; частный только для чтения IAsyncPolicy _ SecondResiliencePolicy; . . . частный IAsyncPolicy GetResiliencePolicy(тип типа) => переключатель типа { Введите t, когда t == typeof(MyResponse) => _responseResiliencePolicy, Введите t, когда t == typeof(MySecondResponse) => _ SecondResponseResiliencePolicy, _ => выдать новое исключение InvalidOperationException («Неверный тип, как для TResponse») }; политика вар = GetResiliencePolicy (typeof (TResponse));
Я получаю сообщение об ошибке «Невозможно преобразовать», и мое приложение не компилируется. Не могли бы вы помочь мне, почему это не удается? И как это исправить?
CS0029 Невозможно неявно преобразовать тип Polly.IAsyncPolicy в Polly.IAsyncPolicy Infrastructure.Repositories C:\Users\Panos\source\Infrastructure.Repositories \SomeRepository.cs 61 Активен
Мобильная версия