In my database I have a tables:
Products{ProductId, CategoryId, Name} // parent table
Procesors{ProductId...} // 1 to 1
HardDisks{ProductId...} // 1 to 1
MotherBoards{ProductId...} // 1 to 1
Categories{CategoryId, Name, ParentId}
And products can be procesor, hard disk, mother board etc.
Option 1:
Create controllers
ProcesorControllers
HardDiskController
MotherBoardController
etc.
Option 2:
CategoryController
ProductController
where ProductController
have a method
public ActionResult Index(int categoryId, string category)
{... // return View(products);
In aplication scenario I need CRUD, Filter products