ASP.NET MVC
-
Implement HttpContextBase in a non-web context
HttpContextBase was a nice addition, but reimplementing HttpContextBase in unit tests is time-consuming when a codebase takes advantage of several of its features such as Request and Server. Would like to see a nice HttpContextBase instance generator given some properties or arguments.
6 votes -
Membership
I suggest you have new membership providers for enterprise applications. Many of the projects I work on require groups of users that follow the same role under an organization. As well as, for that organization only. Also I wish more of this custom profile information was stored in there own table, instead of in xml in a table.
6 votes -
Throw ActionMethodNotFound exception instead of HttpException when "A public action method ... was not foudn on controller ..."
Currently a generic HttpException is thrown when a public action method is not found. I propose throwing a specific ActionMethodNotFound exception that inherits from HttpException. The inheritance should keep the code mostly backwards compatible and the more specific exception would allow easier trapping and translating of these exceptions to 404s without having to do a magic string comparison on the exception message.
6 votes -
Let we just choice use Bundling or Minification function
In default ASP.NET MVC 4 project, If set "BundleTable.EnableOptimizations = True" in Global.asax, Or <compilation debug="false" targetFramework="4.5" />,
When call @Styles.Render() or @Scripts.Render() function,will run Bundling and Minification function together.
Can let we choice just use "Bundling" or "Minification" function, Example: In BundleConfig.vb(or .cs)
bundles.Add(New StyleBundle("~/Content/themes/base/css").Include(
"~/Content/themes/base/jquery.ui.core.css",
"~/Content/themes/base/jquery.ui.resizable.css",
...))If I just choice Bundling, output non-Minification file.
It URL same like "/Content/themes/base/css?v=uisoij234...", but content not-Minification.If I just choice Minification, output non-Bundling file.
It URL same like
"/Content/themes/base/jquery.ui.core.min.css"
"/Content/themes/base/jquery.ui.resizable.min.css"
...
just minification and add "min" to file.6 votes -
6 votes
-
Remove all extra preinstalled packges and references from "Empty" project template
Even the template "Empty" contains many references to unused or obsolete assemblies. Some assemblies or packages included for the future, but this is just confusing and makes clean up a project before starting to develop.
6 votesWhich packages do you recommend we remove? In MVC 4 templates all that are included in the empty template are: Web API, MVC and Razor.
-
Improve Input Validation.
It is currently very difficult to validate html in user inputs. We need an inbuilt mechanism to clean html of malicious code and also allow the developer to decide the type of html to allow (for example allow <b> tags but not <a> tags, disallow all javascript etc). It would be great if this was couple with an html helper for an input box we could configure.
6 votes -
Add admin ui generation based on the models a la Django or RailsAdmin
Add an Admin generation a la Django or RailsAdmin (from Ruby on Rails):
https://github.com/sferik/rails_admin
http://rails-admin-tb.herokuapp.com/The feature is supper amazing.
5 votes -
Add a model metadata attribute for limits between properties
Currently there are two Model Metadata validation attributes that exist that can be combined into a third validation attribute. Those two are Equals and Range.
Equals allows you to specify another property to check to see if it equals, like typing a password twice.
Range allows you to limit an input to a min and max value.
I'd like to suggest combining these so that you can specify that one property has to be greater than or lesser than another property. A real-world example of where this would be useful is an appointment. Making sure that the end date/time is…
5 votes -
Changing validation to be about feedback to the user rather than about errors
Changing validation summary to be about feedback to the user rather than about errors. One idea might be to have differnet types of error/feedback eg confirm, warning, error
5 votes -
Allow the built-in HttpNotFound ActionResult to use a custom view
Right now the result displays a blank page. Not exactly helpful. Also specifying a "description" is completely useless as this is never rendered to the response.
5 votes -
Integrate the HTML5 Boilerplate into the default template
From the H5BP site (http://html5boilerplate.com/):
HTML5 Boilerplate is the professional frontend developers's base HTML/CSS/JS template for a fast, robust and future-safe site.
Boilerplate is not a framework, nor does it prescribe any philosophy of development, it's just got some tricks to get your project off the ground quickly and right-footed.They also have a selection of server configs (web.config) to enable caching and other goodies.
5 votes -
5 votes
-
Add option to allow HTTP method overriding in a GET request
I occasionally need to use a JSONP request to write data, such as for cross-domain logging. Currently I can't restrict the call with [HttpPost], even though clients that can use POST should. I'd like an option for the HTTP method override helpers similar to the Controller.Json JsonRequestBehavior parameter that lets me explicitly specify that I want to allow GET requests to override the HTTP verb for a particular route or action.
5 votes -
DataAnnotations for validations to use convention over configuration
DataAnnotations for validations that are set up using convention rather than configuration so that instead of having to register the annotations as seen below
DataAnnotationsModelValidatorProvider.RegisterAdapter(typeof(PhoneRequiredAttribute), typeof(PhoneRequiredValidator));
Maybe having an "Attributes" directory with the annotations in them
5 votes -
Handle File Upload Size limits transparently
Right now, handling file uploads that are too large is just plain broken, especially when using IIS 7:
1. I have to set requestLimits maxAllowedContentLength="2147483647" to avoid IIS' requestFiltering throwing uncatchable 404.13 errors - this is an issue with IIS though, not with ASP.net MVC
2. I have to set httpRuntime/maxRequestLength to my maximum size (+a little extra for HTTP Headers)
3. I have to use Application_Error in global.asax, check that HttpException.WebEventCode is WebEventCodes.RuntimeErrorPostTooLarge, then somehow parse this.Request to know where I come from.This should be handled sanely and transparently. When I have a File Upload control and a…
5 votes -
Use generic types for UserID in Simple Membership Provider
I have to provide membership in an MVC web app to a Microsoft Dynamics CRM back end. CRM uses Guids as entity keys. The new simple provider forces the use of ints. Your old membership providers use Guids. Why not use generics so you can use any data type as key.
5 votes -
Add the ability to use a DI to create/populate ActionFilterAttribute instances
A strong part of MVC is its extensibility points. However, if you use an IoC/DI container, there is currently no way to populate its dependencies (similar to how you would a controller via the ControllerFactory).
4 votes -
Areas + helpers
Make sure helpers work with projects that use Areas.
4 votes -
Add class definition for LocalReports
Add a class definition for localReports, full class support and control to the localreports, also add full html rendering for asp.net mvc, pdf renderind, control to the page size like 8.5 in x 5.5 in page size for example.
Include also preview reports....
4 votes
- Don't see your idea?