Go to file
Ryan Nowak 12f8f23ccb Make BindingSource extensible
This is a major refactor of how IBinderMetadata interacts with model
binders and value providers. We're doing this to support better
extensibility for metadata in ApiExplorer.

You'll notice a bunch of deleted code in DefaultApiDescriptionProvider
that maps metadata marker interfaces to a fixed list of Api sources. This
is replaced now with IBindingSourceMetadata - which also replaces the
hierarchy of marker interfaces. Now user code can create an arbitrary
binding source and have a consistent API for model-binders,
value-providers and full-visibility in ApiExplorer as
well.

Additonally, there's some error checking in place that better enforces the
constraints we already have in the system. IE you can't create a 'greedy'
model binder that uses value-provider data.

Two additional enhancements are planned for followup PRs:
1. Add a BindingSource property to model-metadata. This will remove some
duplication, but I want to delay it because it would touch another 10 or
so files.

2. Add an extensibility interface for our 'special' model binders like the
file binder so these can show up in ApiExplorer as well.
2015-02-05 13:41:31 -08:00
samples Adding extension methods ConfigureMvcOptions and ConfigureRazorViewEngineOptions. 2015-02-04 14:07:07 -08:00
src Make BindingSource extensible 2015-02-05 13:41:31 -08:00
test Make BindingSource extensible 2015-02-05 13:41:31 -08:00
.gitattributes
.gitignore Add the LinkTagHelper: 2015-02-03 10:12:38 -08:00
CONTRIBUTING.md
LICENSE.txt
Mvc.NoFun.sln Add the LinkTagHelper: 2015-02-03 10:12:38 -08:00
Mvc.sln Updating CompilerCache to use IMemoryCache and file system watcher to 2015-02-05 09:52:17 -08:00
NuGet.Config Fixing Nuget.config 2015-01-29 06:28:40 -08:00
README.md Change ASP.NET vNext to ASP.Net 5 in the Readme.md 2015-01-22 11:00:05 -08:00
Settings.StyleCop Correct StyleCop violations 2015-01-06 16:23:57 -08:00
build.cmd Change SKIP_DOTNET_INSTALL to SKIP_KRE_INSTALL 2015-01-28 18:24:23 -08:00
build.sh Update build.cmd and build.sh to use kvm 2015-01-28 18:24:07 -08:00
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.