Microsoft Web APIはMVCではないため、次のようなことはできません。
var a = Request.MapPath("~");
これも
var b = Server.MapPath("~");
これらはSystem.Web
名前空間ではなく、名前空間の下にあるためSystem.Web.Http
です。
では、 Web APIで相対サーバー パスをどのように把握するのでしょうか。私はMVC
でこのようなことをしていました:
var myFile = Request.MapPath("~/Content/pics/" + filename);
これにより、ディスク上の絶対パスが得られます。
"C:\inetpub\wwwroot\myWebFolder\Content\pics\mypic.jpg"