I am knee deep in starting a new ASP.NET MVC project. Several tutorials have recommended the use of MVC Contrib. I wanted to get the opinion of the Stack Overflow community if it fulfilled its promise of increasing productivity with ASP.NET MVC. Basically are the benefits of MVC Contrib worth adding another leaky abstraction to my application?
Does MVC Contrib fulfill its promise of increasing productivity in ASP.NET MVC
807 Views Asked by ahsteele At
1
There are 1 best solutions below
Related Questions in ASP.NET
- Implementing Azure AD B2C Authentication in .NET 8 Blazor Project (RenderMode: InteractiveAuto)
- Azure Application Insights Not Displaying Custom Logs for Azure Functions with .NET 8
- IIS Rewrite Module exclude bots but allow GoogleBot
- Angular 16 sending null values to API
- I am the domain admin, newbie, how do I connect youtube.com on my domain?
- Dropdown list showing SQLServer2005SQLBrowserUser$DONSERVER instead of Active Directory group name in ASP.NET MVC C#
- ASP.NET Identity, Losing Ability to Login until Application Pool Recycles
- How to unprotect ASP.NET FormAuthentication cookie
- How does it work using ASP.NET FormAuthentication
- What is the purpose of a completely standalone 'this'?
- Is there a way to read .csproj PropertyGroup variable in c#
- MSBuild trying to copy different dll with similar name into project sporadically
- Minimizing IdentityServer4 Round Trips in Microservice Architecture with Ocelot
- Azure AD guest account in web app authentication user claims data
- Receiving 400 bad request on post when customer auth handler is used
Related Questions in ASP.NET-MVC
- I have a problem outputing the roles on the page ListRoles.cshtml
- Dropdown list showing SQLServer2005SQLBrowserUser$DONSERVER instead of Active Directory group name in ASP.NET MVC C#
- Hosting ASP.NET MVC application on IIS web server using Windows 2019 server
- How to display only department fields associated with a selected department in student automation system?
- How to send select input data for form submission?
- Multi level project reference using dll
- How to upload file to Onedrive using ASP.NET MVC?
- ASP.NET MVC web app looping between fields only on some devices
- Is there any automatic job to load AD-groups?
- How to restrict admin js files to download
- Download PDF in ASP.NET MVC application
- How to add bootstrap theme/example into ASP.NET MVC 5?
- Web API works with Windows authentication enabled when consumed via Swagger but throws an unauthorized issue when accessed through web app
- ASP.Net Core 7.0 Web App (Model-View-Controller) ErrorViewModel OnGet OnPost do not get called or executed
- OAuth 2.0 keep getting Authorization has been denied for this request
Related Questions in MVCCONTRIB
- MVC5 Portable Area, how do you use message bus?
- SessionID: NotImplementedException on Unit Tests
- "There is no data available." Where is it from?
- Presentation plugabble architecture MVC
- Mvc 4 Portable Areas css
- T4MVC - Folder under views in areas, can't create view property in Controller Views
- asp.net Razor prevent variables from printing due to counting
- Is MVCContrib dead?
- MvcContrib Portable Areas on IIS scripts 404(not found)
- System.Security.VerificationException on unit test
- Tests in Visual Studio not running when using CreateController method of TestControllerBuilder
- Unable to call generic Url.Action<TController> method from View
- MVCContrib RowAttributes overrides Attributes grid, how to have both?
- MVC4 - TryValidateModel breaks unit tests
- How to set up MVC portable areas to use resources from a complex directory structure?
Related Questions in LEAKY-ABSTRACTION
- Prevent leaky abstraction when using async
- Missing template arguments before 's' C++
- Accessing implementation specific methods on an object that is returned to its API
- Auto implicit arg stops working when type is given a name
- C++: push_back in std::vector while iterating it
- C# pattern for avoiding a leaky abstraction when one of the implementation requires an extra step
- Is clojure.lang really just implementation details?
- ProcessingJS and PointerEvents
- Is there evidence to suggest Thoughtworks' assertion that JSF is a broken abstraction?
- Generic Repository and Leaky Abstraction
- How to return T, when I know class which is hidden behind it?
- How does one best integrate with clojure abstractions?
- Should I use integer ID or pointers for my opaque objects?
- Meaning of Leaky Abstraction?
- Design issue: RMI needs explicit exporting of objects
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Popular # Hahtags
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
I think MVC Contrib is invaluable when it comes to testing. They provide a lot of extension methods that allow you to fluently test routing and action results. For example:
...for routing, and for action results:
Also MVC Contrib provides a helpful TestControllerBuilder class which can build up a controller and take care of faking all the necessary HTTP context type of things. This doesn't seem like much but paired with DI, writing it yourself if a pain.
Moving on from testing, the controller factories for DI/IoC are really useful so you don't have to write it yourself, but not essential IMHO.
The other thing I like about MVC Contrib are the fluent HTML helpers. I think it is much nicer to set HTML properties and other data using these kind of fluent helpers -- here's are two examples: