我正在嘗試將一些數據發布到我的 API。這是我的回購:public async Task Create(CustomerMaster entity){ await trainContext.CustomerMaster.AddAsync(entity); await trainContext.SaveChangesAsync();}這里是我的控制器:public async Task<IActionResult> Post([FromBody]CustomerMaster entity){ if (!ModelState.IsValid) { return BadRequest(ModelState); } await customerMasterRepository.Create(entity); return CreatedAtAction(nameof(GetById), new { id = entity.Id }, entity);}當我試圖用郵遞員寄東西時,我總是會得到 500 的回報。我調試它并在我的 repo 中添加實體,但它實際上從未發布在數據庫中。我錯過了什么嗎?還是我做錯了什么?編輯1:private readonly TrainContext trainContext;public CustomerMasterRepository(TrainContext context){ trainContext = context;}編輯 2:使用 EF,沒有回購所以我在我的控制器中有:private TrainContext context;public CustomerMasterController(){ context = new TrainContext();}在我的 POST 操作中:[HttpPost]public async Task<IActionResult> Post(CustomerMaster entity){ if (entity == null) { return BadRequest(); } await context.CustomerMaster.AddAsync(entity); // await context.SaveChangesAsync(); return CreatedAtRoute("GetCustomer",new { id = entity.Code }, entity);}而且我還是拿回了500。我真的不明白為什么?我調試它并且沒有使用我在實體中發布的內容。編輯3:我使用 API 控制器和 EF 生成的動作創建了這個控制器,在這種情況下,當我嘗試 GET 動作時,我得到 500。現在我真的很困惑 500: 數據庫連接從哪里來?控制器?
- 1 回答
- 0 關注
- 168 瀏覽
添加回答
舉報
0/150
提交
取消