![](/img/trans.png)
[英]How do I create a hyperlink on a Razor page to an image stored in wwwroot?
[英]How can I find the physical path of wwwroot, in a Razor page without a controller?
我需要在一個列表中創建一個文件列表,這在過去很容易......但不是在 Asp.Net Core 2 Razor 頁面上。 我找不到獲取“wwwroot”內“Poems”物理路徑的方法。 我發現了很多使用IHostingEnvironment
例子,但總是在控制器中。 但是我沒有控制器,不需要控制器,只有頁面和代碼后面..
哦,我多么想念 WebForms!
沒有控制器的 Razor Page 的解決方案是什么?
提前致謝。
您可以像在控制器中那樣在 Razor Page 中制作它。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.Mvc.RazorPages;
namespace Viber.Pages
{
public class TestModel : PageModel
{
private Microsoft.AspNetCore.Hosting.IHostingEnvironment _env;
public TestModel(Microsoft.AspNetCore.Hosting.IHostingEnvironment env)
{
_env = env;
}
public void OnGet()
{
// use the _env here
}
}
}
您可以使用 PageModel 的承包商來注入 IHostingEnvironment。
您可以使用 IWebHostEnvironment 類。 代碼塊如下:
private readonly IWebHostEnvironment _webHostEnvironment;
public HomeController(
IWebHostEnvironment webHostEnvironment)
{
_webHostEnvironment = webHostEnvironment;
}
public IActionResult Index()
{
string rootPath = _webHostEnvironment.WebRootPath
return View();
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.