Привет, я работаю над web api (. net core) с ядром Entity Framework. Я создал контекстный класс, как показано ниже.
public class TimeSheetContext : DbContext
{
public TimeSheetContext(DbContextOptions<TimeSheetContext> options)
: base(options)
{
}
public DbSet<Project> Projects { get; set; }
public DbSet<User> Users { get; set; }
public DbSet<TimeSheetData> timeSheets { get; set; }
public DbSet<Week> weeks { get; set; }
}
Затем я использую приведенный ниже код для добавления данных расписания.
public void SaveTimeSheet(TimeSheetData timeSheet)
{
using (var context = new TimeSheetContext())
{
var std = context.timeSheets.Add(timeSheet);
context.SaveChanges();
}
}
using (var context = new TimeSheetContext())
здесь я получаю ошибку ниже.
нет аргументов, соответствует требуемым формальным параметрам параметра timesheetcontext.timesheetcontext (dbcontextoptions)
Я добавил ниже код при запуске.
services.AddDbContext<TimeSheetContext>(opt =>
opt.UseSqlServer(Configuration.GetConnectionString("TimeSheet")));
, затем я используется, как показано ниже.
public class TimeSheet : ITimesheet
{
private readonly TimeSheetContext _context;
public TimeSheet(TimeSheetContext context)
{
_context = context;
}
public TimeSheet GetTimeSheet(string userid, string weekid)
{
throw new NotImplementedException();
}
public void SaveTimeSheet(TimeSheetData timeSheet)
{
var std = _context.timeSheets.Add(timeSheet);
_context.SaveChanges();
}
}
, затем я попытался зарегистрировать службу TimeSheet при запуске, как показано ниже.
services.AddTransient<ITimesheet, TimeSheet>();
Теперь у меня возникла ошибка рядом с расписанием,
timesheet является пространством имен, но используется как тип
Может кто-нибудь помочь мне найти эту ошибку. Любая помощь будет принята с благодарностью. Спасибо