Ошибка регистрации общего репозитория Ошибка «Количество предоставленных общих аргументов не равно арности» - PullRequest
0 голосов
/ 15 мая 2019

Я получил эту ошибку:

ArgumentException: число предоставленных общих аргументов не равна арности определения общего типа. Имя параметра: конкретизация

public class EfCoreRepository<TContext, TEntity> : IEfCoreRepository<TEntity>
            where TContext : IEfCoreDbContext
            where TEntity : class
            {
        ....
        }

Вот интерфейс

public interface IEfCoreRepository<TEntity> where TEntity : class

где я это регистрирую

services.AddTransient(typeof(IEfCoreRepository<>), typeof(EfCoreRepository<,>));

1 Ответ

0 голосов
/ 19 мая 2019

Я обновил интерфейс до

public interface IEfCoreRepository<TContext, TEntity> 
         where TContext : IEfCoreDbContext
         where TEntity : class

и затем зарегистрируйте его следующим образом

services.AddTransient(typeof(IEfCoreRepository<,>), typeof(EfCoreRepository<,>));
...