Не удалось определить тип службы при попытке активации.C#

Место общения программистов C#
Ответить
Anonymous
 Не удалось определить тип службы при попытке активации.

Сообщение Anonymous »

В моем приложении ASP.NET Core я получаю следующую ошибку:

InvalidOperationException: невозможно разрешить службу для типа «Cities.Models.IRepository». при попытке активировать «Cities.Controllers.HomeController».

Я HomeController Я пытаюсь передать геттер Cities к представлению следующим образом:
public class HomeController : Controller
{
private readonly IRepository repository;

public HomeController(IRepository repo) => repository = repo;

public IActionResult Index() => View(repository.Cities);
}

У меня есть один файл Repository.cs, который содержит интерфейс и его реализацию, например:
public interface IRepository
{
IEnumerable Cities { get; }
void AddCity(City newCity);
}

public class MemoryRepository : IRepository
{
private readonly List cities = new List();

public IEnumerable Cities => cities;

public void AddCity(City newCity) => cities.Add(newCity);
}

Класс My Startup содержит код, сгенерированный по умолчанию из шаблона. Я внес какие-либо изменения:
public class Startup
{
public Startup(IConfiguration configuration)
{
Configuration = configuration;
}

public IConfiguration Configuration { get; }

public void ConfigureServices(IServiceCollection services)
{
services.AddControllersWithViews();
}

public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
...
}
}


Подробнее здесь: https://stackoverflow.com/questions/469 ... o-activate
Ответить

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

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

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

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

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