Go to file
Ryan Nowak f95ffb57ae Make dictionary allocations lazy on RouteData
This change makes the allocation of DataTokens and Values on RouteData
lazy, and elides copies when copying an 'empty' RouteData.

In our current architecture this change will eliminiate 2 * (N + 1)
dictionary allocations/copies per request, where N is the number of routes
processed. In a large system with lots of attribute routes, this number
could be very significant.

For a small MVC site (ModelBinding, Validation, Views) with one route, it
still shows a modest reduction of dictionary allocations without adding
much complexity.
2015-09-28 22:54:32 -07:00
samples/RoutingSample.Web
src/Microsoft.AspNet.Routing Make dictionary allocations lazy on RouteData 2015-09-28 22:54:32 -07:00
test/Microsoft.AspNet.Routing.Tests Expose parsed route so that observers can get extra details about the route (i.e. optional state) 2015-09-23 09:00:28 -07:00
.gitattributes
.gitignore
.travis.yml
CONTRIBUTING.md
LICENSE.txt
NuGet.config Make dictionary allocations lazy on RouteData 2015-09-28 22:54:32 -07:00
NuGetPackageVerifier.json Enabling NuGetPackageVerifier 2015-09-18 12:44:29 -07:00
README.md
Routing.sln
Settings.StyleCop
appveyor.yml
build.cmd
build.sh
global.json
makefile.shade

README.md

ASP.NET Routing

AppVeyor: AppVeyor

Travis: Travis

Contains routing middleware for routing requests to application logic.

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.