我试图弄清楚这一点,但是我被困住了。我有一个带有Service / Repo / Api / Angular层的Net Core 2应用程序-但是现在我想“添加”控制台应用程序并访问我已经建立的所有好东西。我似乎陷入了混乱的静态对象和DI和null参数。无论如何,这是我的代码的简化版本。namespace SimpleExample{ class Program { private static ApplicationDbContext _appDbContext; public Program(ApplicationDbContext appDbContext) { _appDbContext = appDbContext; } static void Main(string[] args) { var instance = new Program(); // this doesn't work! var instance = new Program(_appDbContext); // neither does this! instance.GetData(); } private void GetData() { Console.WriteLine("Let's read some data! Press a key to continue."); Console.ReadLine(); var data = "my data"; var result = GetId(data); } private string GetId(string original) { var data = _appDbContext.Data .Where(x => x.Name == original.Trim) .FirstOrDefault(); return data; } }}我正在经典“非静态字段需要对象引用”错误。然后,从这里进行研究,我将其更改为静态,然后一切都变为空。不只是我要注入的DbContext。我也在尝试注入私人ManagerService _managerService;但出现相同的错误。更新如果我尝试私有静态ApplicationDbContext _appDbContext = new ApplicationDbContext();如下面几次建议,那么我得到了错误没有给出与“ ApplicationDbContext.ApplicationDbContext(DbContextOptions)”所需的形式参数“ options”相对应的参数
1 回答
- 1 回答
- 0 关注
- 288 浏览
添加回答
举报
0/150
提交
取消