Dlaczego kontrolery MVC muszą mieć końcową konwencję kontrolera o nazwie klasy?

Uważam za śmieszne, że MVC nie rozpoznaje kontrolera, jeśli nie ma kontrolera dołączonego do nazwy klasy.Ta odpowiedź wspominaControllerDescriptor iControllerTypeCache jako dwa miejsca w MVC, gdzie ta konwencja jest utworzona.

Moje pytanie brzmi: dlaczego? To oczywiście nie jest konwencja nad konfiguracjąIsControllerType wControllerTypeCache sprawdza, czy klasa:

Jest publicznyNie jest abstrakcyjnyWdrożeniaIControllerKończy się na"Controller"

Czy ktoś zna powód tego? Po tym wszystkim kontrolery będą prawdopodobnie w rzeczywistym projekcie MVC, w folderze o nazwie „Kontrolery”, a proste dwukrotne kliknięcie pliku pokaże nam, że klasa dziedziczyController.

Po prostu wydaje mi się głupia - ale zastanawiałem się, czy jestrzeczywisty dlaczego to zrobili.

EDYTOWAĆ

Właśnie widziałemten wpis na blogu Phil Haack z wczoraj, gdzie omawia tę konwencję - jest o mnie taki sam - Prawdopodobnie trochę bezcelowy!

questionAnswers(3)

yourAnswerToTheQuestion