• 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.

Finding and handling views

SEO Extensions optimizes the way ASP.NET MVC finds and handles the views for controllers by a sort of expansion over the original support for areas, introduced with ASP.NET MVC 2. In fact, this feature takes at a higher level the structure of the folders which host the MVC views for your application and, instead of having them named by every controller like in traditional ASP.NET MVC, it reflects the structure of your applications and requires the views to be put into a folder structure that reflects the namespaces of your code. Of course, this lead to a much cleaner application structure and to a better organization of your views, especially in the event of a high number of items.
By default, whenever the SEO Extensions engine need to find a view for your MVC application it extracts the namespace of the calling controller, splitting it by the dot symbol and considering every part as a subfolder of the standard
Views
folder. Next, it takes the name of the controller without the standard
Controller
suffix - this part being similar to the way views are traditionally found - and treats it as a subfolder. Finally, it tries to find the view file in that folder, using the traditional fallback rules.
For example, if your controller lays on the
WebSite.Controllers.FooBar
namespace and is named
BazController
, SEO Extensions would try to find its views on the
~/Views/WebSite/Controllers/FooBar/Baz
folder.


Root namespace prefix

While such a folder structure is highly desirable in real world MVC web applications, having it reflect every single part of the namespaces of the controllers may lead to an overly complexity, especially if all of the controllers share a single namespace prefix. For this, SEO Extensions allows to configure a namespace prefix that should be stripped from the namespaces whenever the engine needs to find a view: to configure this namespace prefix, you need to pass its value to the aforementioned
RegisterRoutes
static method of the
DeclarativeRouteRegistration
class.
In the following block of code, for example, the SEO Extensions routing manager is configured with the root namespace prefix of the aforementioned
BazController
type (not included in the sample); this way, whenever the system needs to locate views for the BazController type it would look in the
~/Views/FooBar/Baz
folder.

            public class MyApplication : System.Web.HttpApplication
            {
                // ...

                public static void RegisterRoutes(RouteCollection routes)
                {
                    // SEO routing model registration, with a root namespace prefix

                    DeclarativeRouteRegistration.RegisterRoutes("WebSite.Controllers");

                    // ...
                }

                // ...
            }
        


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