将 ASP.NET Core 2 Razor Pages 默认目录名称更改为 wwwroot

Change ASP.NET Core 2 Razor Pages default directory name to wwwroot

ASP.NET Core 2.0 的主要新功能之一是 Razor Pages。 通过将它们放入我的 startup.cs 文件,我已经能够在默认 /Pages 文件夹和任何其他自定义文件夹(如 /RazorPages 中使用它们。

services.AddMvc().WithRazorPagesRoot("/RazorPages");

如本文所述:http://www.talkingdotnet.com/change-asp-net-core-razor-pages-default-directory-name/

但是当我尝试将默认的 Razor Pages 目录设为 /wwwroot 文件夹时,它会忽略我在 "code-behind" .cs 文件中声明的任何命名空间或模型。像这样:

services.AddMvc().WithRazorPagesRoot("/wwwroot");

我猜是因为无法从面向 /wwwroot 的 public 文件夹访问 .cs 文件。

有谁知道如何使 Razor Pages 默认目录 /wwwroot

我认为 Razor Pages 功能在未来会有很大的用处。

感谢您的帮助。

您需要编辑项目文件才能实际编译 wwwroot 中的 .cs 个文件;默认模板将它们排除在外。

但是,你不应该这样做; wwwroot 意味着只有 public 面向内容,而不是服务器端代码。