title: convert from physical path to virtual path
body: <p>I have this function that gets the fileData as a byte array and a file path. The error I am getting is when it tries to set the fileInfo in the code bewlo. It says 'Physical Path given, Virtual Path expected'</p>
  
  <pre><code> public override void WriteBinaryStorage(byte[] fileData, string filePath)
      {
          try
          {
              // Create directory if not exists.
              System.IO.FileInfo fileInfo = new System.IO.FileInfo(System.Web.HttpContext.Current.Server.MapPath(filePath)); //when it gets to this line the error is caught
              if (!fileInfo.Directory.Exists)
              {
                  fileInfo.Directory.Create();
              }
  
              // Write the binary content.
              System.IO.File.WriteAllBytes(System.Web.HttpContext.Current.Server.MapPath(filePath), fileData);
          }
          catch (Exception)
          {
              throw;
          }
      }
  </code></pre>
  
  <p>When debugging it, is providing the filePath as <code>"E:\\WEBS\\webapp\\default\\images\\mains\\myimage.jpg"</code> . And the error message is</p>
  
  <pre><code>'E:/WEBS/webapp/default/images/mains/myimage.jpg' is a physical path, but a virtual path was expected.
  </code></pre>
  
  <p>Also, what it is triggering this to happen is the following call</p>
  
  <pre><code>properties.ResizeImage(imageName, Configurations.ConfigSettings.MaxImageSize, Server.MapPath(Configurations.EnvironmentConfig.LargeImagePath));
  </code></pre>