• Products

    Microsoft .NET

    Microsoft .NET components, libraries & tools

    • EmailVerify for .NET
      Email validation library, featuring full IETF-compliant syntax validation, DNS checking, mailbox existence test and tools for advanced batch processing.
    • ProxyClient for .NET
      Powerful proxy client library with support for SOCKS 4, SOCKS 4a, SOCKS 5 and HTTP proxy servers, allowing to establish and accept remotely proxied connections.
    • MVC Extensions
      Powerful routing engine extensions for ASP.NET: allows to declare routes by way of attributes applied to MVC actions and generates URLs using compiler-safe lambda expressions.

    Microsoft Silverlight

    Microsoft Silverlight components, libraries & tools

    • EmailVerify for Silverlight
      Email validation library with Data Annotations support, featuring advanced syntax verification, ISP-specific syntax checks and disposable email address handling.

    Microsoft Visual Studio extensions

    Development tools, integrated into your favorite IDE

    • Routing Assistant
      FREE

      A cool and free Visual Studio extension which allows to easily browse, define, match and filter ASP.NET MVC routes within ASP.NET applications and web sites.

  • Purchase

    Products

    • EmailVerify for .NET
      • Licensing / editions
      • Volume discounts
      • Upgrades
      Purchase
    • ProxyClient for .NET
      • Licensing
      • Volume discounts
      • Upgrades
      Purchase
    • MVC Extensions
      • Licensing
      • Volume discounts
      • Upgrades
      Purchase

    Request a quote

    • Contact us
      Send a request to our sales staff.

  • Support

    Knowledge base

    • Browse the knowledge base
      Support documents for our products and services.

    Request support

    • Contact us
      Send a request to our customer support staff.

  • About us

    About Cobisi

    About our company, our team, our mission

    • Our company
      Cobisi company information.
    • Our mission
      About what we aim to achieve.
    • Follow us
      Follow us on Twitter.

    Contact us

    • Contact us
      Send a request to our customer support staff.

  • Company blog

    Latest posts from our blog

    Shared thoughts about our technologies, products and services

    • Routing Assistant reached version 1.7
      Published on Thursday, March 21, 2013

    • Verifalia: a new, complete hosted email validation service
      Published on Thursday, December 6, 2012

    • Routing Assistant v1.4 released
      Published on Friday, October 12, 2012

MVC Extensions

An awesome routing engine for ASP.NET MVC 3 and 4

  • Overview
  • Tutorial
  • Release notes
  • Free edition
  • Licensing
  • Purchase

🤖
MVC Extensions has been discontinued, sorry
We have discontinued this product because newer ASP.NET versions already include a similar attribute-based routing mechanism.

Built-in parameter constraints

While the automatic parameters validation provided by SEO Extensions may be more than welcomed in new web sites and applications, you may want to adjust or turn it off for existing projects or for specific cases, in order to resemble the standard ASP.NET MVC routing behavior. The good news is that the parameters validation system is completely configurable by way of the
TypeDefaultConstraintRegistry
class. Whenever SEO Extensions needs to validate a route parameter for an incoming request, it checks the aforementioned
Constraint
property first, and, should it be missing, checks the
TypeDefaultConstraintRegistry
class to see if a default constraint for the type has been specified there.
In fact, SEO Extensions comes with a set of built-in constraints, automatically registered for the most used types exposed by the .NET Framework, including numeric types, booleans, GUIDs and enumerations.
If you need to get rid of the existing parameter validation logic for one of your route parameters, for example, you may want to set the
Constraint
property of its
Route.Param
attribute to
null
:

            public class MyController : Controller
            {
                [Route.Action("~/foo")]
                public ActionResult Foo([Route.Param(Constraint = null)] int bar)
                {
                    return Content("Baz!");
                }
            }
        

Replacing the parameters validation logic for your entire web site, by the way, could easily be done in your application class (global.asax) by calling the
Register()
static method of the
TypeDefaultConstraintRegistry
(or the
Unregister()
static method to completely remove the validation logic for a given type):
Excerpt from the application class (global.asax.cs):
        public static void RegisterRoutes(RouteCollection routes)
        {
            // ...

            TypeDefaultConstraintRegistry.Register(typeof(UInt32), "\d+");

            // ...
        }
        

Moreover, SEO Extensions allows to easily add your own default constraints to be used during parameter validations! Should you have a custom business class you need to pass as a route parameter, for example, you may easily define a custom constraint and register it for your whole application, using the aforementioned
Register()
method. This way, the framework will automatically validate your parameters before executing the target actions using your own type constraints.

Content


  • Introduction
  • Installation
  • Your first SEO (declarative) route
    • Application (Global.asax) setup
    • Visual feedback in the IDE
  • Handling parameters
    • Visual feedback in the IDE
    • Validation
    • Built-in constraints
    • Enumerated values
      • Handling unmodifiable enums
  • Getting URLs from routes
    • Redirecting to SEO (declarative) routes
  • Views
    • Root namespace prefix


Not what you are looking for?


Please don't hesitate to contact us with your questions and comments; technical support is always free of charge, and requests made by registered clients will have higher priority.
Products
  • EmailVerify for .NET
    • Features
    • Online demo
    • Download
    • Licensing / editions
    • Release notes
    • Purchase
  • ProxyClient for .NET
    • Download
    • Licensing / editions
    • Release notes
    • Purchase
  • MVC Extensions
    • Tutorial
    • Free edition download
    • Licensing
    • Release notes
    • Purchase
Support
  • Knowledge base
  • Request support

About Cobisi
  • The company
  • Mission
  • Follow us
  • Contact us
Copyright © 2005-2022 Cobisi Research. All rights reserved.
Cobisi Research - Via Della Costituzione, 31 - 35010, Vigonza - Italy (European Union)
VAT ID: IT04391160282