IAsyncPolicy<> не может преобразовать типC#

Место общения программистов 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 Активен
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»