Skip to content
AlexBar edited this page Nov 10, 2012 · 25 revisions

Welcome to ASP.NET MVC Extensions

Project Description

ASP.NET MVC Extensions is developed on top of ASP.NET MVC extensibility point, which allows your IoC Container to rule everywhere.

Versions

Current stable version is 2.5.x

Development version is 3.0.x. Read more about changes from 2.5.

Features:

  • ModelMetadata Fluent Configuration: Supports Composite ModelMetadata provider, which fallback to default DataAnnotationsModelMetadataProvider, supports configuring your model with fluent syntax like EF Code First or Fluent NHibernate.
  • Container Neutral: Stop referencing you IoC Container in your application code, let your application independent from the underlying container, yet utilizing the complete power.
  • Multiple Adapter: Packed with all the Popular IoC Containers adapter which includes Autofac, Ninject, StructureMap, Unity and Windsor.
  • Bootstrapping: Stop writing the same bootstrapping code over and over again, let the extensions to handle your Controller/Controller Factory/Model Binders/View Engines/Action Filters/Custom Dependencies etc registrations.
  • PerRequestTask: Act as a HttpModule to perform custom logic in the start and end of the request without registering in web.config.
  • Model Binder: Inject custom dependencies in your Model Binder with constructor injection.
  • Action Filter Fluent Registration: Fluently register your action filters which supports constructor injection of your custom dependencies.
  • Various ActionResults: Contains common action result which includes XmlResult, ExtendedJsonResult (which supports JsonConverters), Adaptive PRG (PostRedirectGet) results.
  • Common Route Constraints: Contains common route constraints like Range, Positive Int/Long, Guid, Enum, RegEx etc.
  • Various other Utility methods and helpers.

Topics

Sample code

  1. Check out sample code from our repository.
  2. Sample code that demonstrate how to optimize the dropdown populating with help of MvcExtensions
  3. Check out other open source projects: