This change removes reflection from validator providers, and instead relies on cached metadata in in the modelmetadata. In general this means that our MVPs don't need to cache anything, they just look at the metadata and create what they need. In the case of data-annotations, we update the model details provider to add validation attributes to the modelmetadata. This would allow someone to replace the DataAnnotationsValidatorProvider, but still use the metadata in these attributes. The change to the IModelValidatorProvider api (to use a context) is intended to minimize allocations. Currently each validator provider needs to return a list so you end up with N+1 lists (N validators + a final list to compine them all). This change will let us just create the final list (and a small context object). This is a very very high traffic API so it seemed worth doing. There's also some general massaging of namespaces and file locations. |
||
|---|---|---|
| samples | ||
| src | ||
| test | ||
| .gitattributes | ||
| .gitignore | ||
| CONTRIBUTING.md | ||
| LICENSE.txt | ||
| Mvc.NoFun.sln | ||
| Mvc.sln | ||
| NuGet.Config | ||
| README.md | ||
| Settings.StyleCop | ||
| build.cmd | ||
| build.sh | ||
| global.json | ||
| makefile.shade | ||
README.md
ASP.NET MVC
ASP.NET MVC gives you a powerful, patterns-based way to build dynamic websites that enables a clean separation of concerns and gives you full control over markup for enjoyable, agile development. ASP.NET MVC includes many features that enable fast, TDD-friendly development for creating sophisticated applications that use the latest web standards.
ASP.NET MVC in ASP.NET 5 includes support for building web pages and HTTP services in a single aligned framework that can be hosted in IIS or self-hosted in your own process.
This project is part of ASP.NET 5. You can find samples, documentation and getting started instructions for ASP.NET 5 at the Home repo.