MVC Contrib выполняет обещание повысить производительность в ASP.NET MVC

Я начинаю работать над новым проектом ASP.NET MVC. В нескольких учебниках рекомендуется использовать MVC Contrib. Я хотел получить мнение сообщества Stack Overflow, если он выполнил свое обещание повысить производительность с помощью ASP.NET MVC. В основном, преимущества MVC Contrib стоит добавить в мое приложение еще пропущенную абстракцию

Ответ 1

Я думаю, что MVC Contrib бесценен, когда дело доходит до тестирования. Они предоставляют множество методов расширения, которые позволяют вам свободно проверять маршрутизацию и результаты действий. Например:

"~/Администрирование/Пользователи/Изменить/TestUser"                 .ShouldMapTo(a = > a.Modify( "testuser" ));

... для маршрутизации и для результатов действия:

Controller.List()                 .AssertViewRendered()                 .WithViewData > ()                 .Count                 .ShouldEqual(4, "Должно быть возвращено 4 пользователя" );

Также MVC Contrib предоставляет полезный класс TestControllerBuilder, который может создать контроллер и позаботиться о том, чтобы подделать все необходимые типы HTTP-контекста. Это не похоже на много, но сопряжено с DI, написав его сами, если боль.

        Builder = new TestControllerBuilder();
        Builder.CreateController<CT>();

Переходя от тестирования, фабрики контроллеров для DI/IoC действительно полезны, поэтому вам не нужно писать это самостоятельно, но не важно IMHO.

Другим, что мне нравится в MVC Contrib, являются быстрые помощники HTML. Я думаю, что гораздо лучше установить свойства HTML и другие данные с помощью этих быстрых помощников - вот два примера:

<% = this.TextBox( "name" ). Label ( "Название категории активности:" ).MaxLength(50).Class( "required" )