title: Route constraint to check if Url contains any controller name
body: <p>I want to create a route which does not belong to any controller. Means if url does not contain any controller name it should redirect to a particular action</p>
  
  <p>How can I create constraint for such route.</p>
  
  <p>For example if I have route such as </p>
  
  <pre><code>routes.MapRoute(
              name: "user",
              url: "{username}/{id}",
              defaults: new { controller = "Home",     action="username",id=UrlParameter.Optional },
              constraints: new { isuser = new checkuserConstraint() }
          );
  </code></pre>
  
  <p>what should be constraint so that it wont redirect to default <code>home/index</code> route</p>
  
  <p>EDIT:  If use <code>www.domain.com/admin/adminid</code> as url it will return error as there is no controller named admin..in this case I want it to call the <code>username</code> action of <code>home</code> controller.</p>