我試圖弄清楚這一點,但是我被困住了。我有一個帶有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 回答
- 0 關注
- 303 瀏覽
添加回答
舉報
0/150
提交
取消