title: MVC controller name appears twice in URL
body: <p>I have an image link extension that I am using to navigate to the same view with some calculations. Once the user chooses a value from a dropdown list and clicks the link, I need to navigate to the same view and pass the value of their selection. Everything is working, except for the controller name I am passing to is being hit twice. I cannot seem to wrap my head around why this is happening.</p>
  
  <p>Consider two views, one is Project and another one is ProjectRoles. First I am navigating to the ProjectRoles page from Project View via an Action link. After that one more image link is there in the ProjectRoles view, Now If I click it then the url should pass a parameter with help of querystring, but the controller name comes twice. Where I did go wrong? Or Is it not possible in MVC?</p>
  
  <p>My project view code:</p>
  
  <pre><code>protected string LinkButtonAddPerson(string action, string controllerName, string actionName, long id, long createUser, string status,int projectId)
  {
          string link = string.Empty;
  
          // Controller Name: ProjectRolesController     Action: AddEditProjectRoles
          string querystring = "&lt;a href='../" + controllerName + "/" + actionName + "/?id=" + id + "&amp;status=###status"+ "&amp;projectId="+ projectId + "&amp;veryfirstTime=Y'  &gt;&lt;img id='###ahrefID' src='../../Content/Images/###image'&gt;&lt;/a&gt;";
  
          link = querystring.Replace("###status", Constants.Status.Pending).Replace("###image", "addperson.png").Replace("###ahrefID", "addperson");
          //link = querystring.Replace("###status", "P").Replace("###image", "edit.png").Replace("###ahrefID", "edit");
          return link;
   }
  </code></pre>
  
  <p>And ImageLinke button in ProjectRoles:</p>
  
  <pre><code>protected string LinkButton(string action, string controllerName, string actionName, long id, long 
  createUser, string status, string firstcall="N")
  {
       string link = string.Empty;
       string querystring = "";
  
       // Controller Name: ProjectRolesController     Action: AddEditProjectRoles
      querystring = "&lt;a href='../" + controllerName + "/" + actionName + "/?id=" + id + "&amp;status=###status'&gt;&lt;img id='###ahrefID' src='../../Content/Images/###image'&gt;&lt;/a&gt;";
  
      link = querystring.Replace("###status", Constants.Status.Pending).Replace("###image", "edit.png").Replace("###ahrefID", "edit");
  
      return link;
  }
  </code></pre>
  
  <p>And my AddEditProjectRoles:</p>
  
  <pre><code> public ActionResult AddEditProjectRoles(int? Id, string status,int projectId, string veryfirstTime="N")
   {
       ... 
       ...
       ...
       // Based on the parameter value, fetching the details. 
   }
  </code></pre>