【发布时间】:2022-03-04 13:10:55
【问题描述】:
我正在为 asp.net core 开发一个新的 Razor Page 应用程序。
问题:我添加了一个新的 Area 文件夹 (TeamDrawing),但是当我将 _ViewStart.cshtml 放在 Area/TeamDrawing/Pages 中时,对 Root/Pages/Shared/_Layout.cshtml 页面的引用不起作用文件夹或 Area/TeamDrawing 文件夹。
我在 Area/Identity 文件夹中使用 asp.net 身份(内置在我使用的模板中),它引用 Root/Pages/Shared/_Layout.cshtml 没有问题。
我做错了什么?
我想在我的所有区域文件夹中使用我的 Root/Pages/Shared/_Layout.cshtml。
这是我的区域文件夹:
这是根页面文件夹:
更新:
我的问题似乎是别的。我没有意识到我有一个 F12 控制台错误。 Root/Pages/Shared/_Layout.cshtml 调用一些代码来加载我的菜单项,并且路径试图转到 Area/TeamDrawing 中的控制器,而不是根上的控制器。我需要弄清楚如何指向根/控制器。
所以在根目录中指向 _Layout 似乎没问题。
更新 2:
如果我将直接 URL 放在 get 调用中,它将起作用。
有没有办法不能将直接 URL 放在 URL 中
作品:
$.get(BuildSafeURL("https://localhost:44355/ToolbarMenu/LoadToolbarMenuItems", null))
.done(function (data) {
});
因为它试图进入 Area/TeamDrawing 中的控制器而中断:
$.get(BuildSafeURL("ToolbarMenu/LoadToolbarMenuItems", null))
.done(function (data) {
});
我已经在我的 Root/_Layout 文件中尝试过这个:
<script type="text/javascript">
// Global variable for relative pathing for ajax calls
var rootPath = '@Url.Content("~")';
</script>
但这不适用于rootPath
【问题讨论】:
标签: c# asp.net-core razor-pages