У меня есть папка моделей, а в папке - Todo.cs и TodoContext.cs
В Todo.cs мой код:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
namespace ApiCrudWithEfCore.Models
{
public class Todo
{
public int Id { get; set; }
public string title { get; set; }
public bool Iscomplete { get; set; }
}
}
А в TodoContext у меня есть:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using Microsoft.EntityFrameworkCore;
using System.ComponentModel.DataAnnotations;
namespace ApiCrudWithEfCore.Models
{
public class TodoContext : DbContext
{
public TodoContext(DbContextOptions<TodoContext> options) :base(options) {}
public DbSet<Todo> Todos { get; set; }
}
}
После этого я поместил строку подключения в appsettings.json :
{
соединение: "Сервер = (localdb) \ mssqllocaldb; База данных = Todo; Trusted_Connection = True;",
"Логирование": {
"LogLevel": {
«По умолчанию»: «Предупреждение»
}
},
"AllowedHosts": "*"
}
И я использую его в startup.cs вот так:
public void ConfigureServices(IServiceCollection services,IConfiguration config)
{
services.AddMvc();
services.AddDbContext<TodoContext>(options => options.UseSqlServer(config.GetConnectionString("connection")));
}
Но когда я использую команду Add-Migration, она выдаёт мне эту ошибку:
Произошла ошибка при доступе к IWebHost в классе «Программа».
Продолжая без поставщика услуг приложения. Ошибка:
Метод ConfigureServices должен быть либо без параметров, либо принимать только один
параметр типа IServiceCollection. Невозможно создать объект
введите «TodoContext». Для разных шаблонов, поддерживаемых при дизайне
время см https://go.microsoft.com/fwlink/?linkid=851728
Я прочитал это, но не смогу найти мне что-нибудь полезное?