title: Server.MapPath does not return the right physical path mapped to a virtual directory in Web-App subfolder
body: <p>I create a web site and mapped it to the <code>D:\MyWebApp</code> and in <code>Plugins</code> sub directory I create a virtual directory and mapped it to <code>D:\Project\Presentation\Web\Accounting</code>.
  the problem is when I want to get the physical path of the<code>http://localhost/Plugins/Accounting</code> I get wrong result.</p>
  
  <p>both <code>Server.MapPath("~/Plugins/Accounting")</code> and <code>Server.MapPath("/Plugins/Accounting")</code> returns 'D:\MyWebApp\Plugins\Accounting' that does not exist physically. I want to get <code>D:\Project\Presentation\Web\Accounting</code>.
  I search for it and just get below lines:</p>
  
  <ol>
  <li>Server.MapPath(".") returns the current physical directory of the file (e.g. aspx) being executed</li>
  <li>Server.MapPath("..") returns the parent directory</li>
  <li>Server.MapPath("~") returns the physical path to the root of the application</li>
  <li>Server.MapPath("/") returns the physical path to the root of the domain name (is not necessarily the same as the root of the application)</li>
  </ol>
  
  <p>but in my case (virtual directory in a subfolder), it's not work !!!
  I use IIS8 and Asp.Net-Mvc 4 and C#4.
  how can I get this?</p>