ため.cshtmlページで同等のものを見つけようとしています。
このオブジェクト上の2つの興味深い性質があります。
ContentRootPath
:パス:などあなたが通常appsettings.json見つけるだろうアプリケーションのベースパス(、Program.csが、
WebRootPath
へのパスあなたが探しているものです/ wwwrootディレクトリ、。
IHostingEnvironment
サービスへのアクセスを得るためにに、単にあなたのコントローラのコンストラクタでそれを注入し、フィールドでそれに保持します。今
public class HomeController : Controller
{
private IHostingEnvironment _env;
public HomeController(IHostingEnvironment env)
{
_env = env;
}
}
、このコントローラのアクションメソッドでは、あなたが今System.IO.Path.Combine
を使用してファイルとWebRootPath
財産への物理パスを構築することができます。この例では
public IActionResult Index()
{
ViewBag.FilePath = Path.Combine(_env.WebRootPath, @"Content\images\svg-defs.svg");
return View();
}
Iは容易インデックスビューで表示するViewBag
に得られた経路を追加した:
<h2>Index View</h2>
<p>Filepath: @ViewBag.FilePath</p>
これはC:\MySite\wwwroot\Content\images\svg-defs.svg
の線に沿って何かを印刷し