こんにちは、エンティティ フレームワーク コアを使用して Web API(.net コア) に取り組んでいます。以下のようにコンテキストクラスを作成しました。
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; }
}
次に、以下のコードを使用して timesheetdata を追加しています。
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 は名前空間ですが、型のように使用されます
誰かがこのエラーを見つけるのを手伝ってくれますか? どんな助けでも大歓迎です。ありがとう