我在設計我的服務層並在控制器中使用它們的最佳方法方面遇到問題。這是我的擔心。使用服務層關注Asp.net核心問題
目前我使用這個刪除類別
[HttpPost]
[ValidateAntiForgeryToken]
public IActionResult Delete(List<Guid> ids)
{
if(ids == null || ids.Count == 0)
return RedirectToAction("List");
_categoryService.DeleteCategories(_categoryService.GetCategoryByIds(ids));
_categoryService.SaveChanges();
return RedirectToAction("List");
}
我關心的是,我應該只是通過ID來DeleteCategories
然後調用DeleteCategories
內GetCategoryByIds
。如果我想只刪除1個類別,是它更好地添加其他方法一樣DeleteCategory
然後在控制器檢查ID的長度,如果是隻有1個,使用DeleteCategory
相反,
嗨,我不明白你的意思_如果你只是想刪除它,就不需要查詢數據庫中的所有其他類別信息。我正在使用實體框架,我怎麼能通過不查詢數據庫刪除實體來刪除? – markoverflow
@markoverflow作爲一般規則,如果不需要,最好避免查詢數據庫。只有主鍵需要做刪除。在[這個SO問題]中有幾個例子(http://stackoverflow.com/questions/2471433/how-to-delete-an-object-by-id-with-entity-framework)如何做到這一點。 –