ASP.NET Core 3.1 MVC 应用程序 - 在子目录中搜索视图
创始人
2024-09-14 21:30:32
0

要在ASP.NET Core 3.1 MVC应用程序中的子目录中搜索视图,可以使用自定义视图位置解析器。

以下是一个解决方法的示例:

  1. 创建一个自定义的视图位置解析器类,例如SubdirectoryViewLocationExpander.cs。
using Microsoft.AspNetCore.Mvc.Razor;
using System.Collections.Generic;

namespace YourNamespace
{
    public class SubdirectoryViewLocationExpander : IViewLocationExpander
    {
        public void PopulateValues(ViewLocationExpanderContext context)
        {
            // 不需要实现
        }

        public IEnumerable ExpandViewLocations(ViewLocationExpanderContext context, IEnumerable viewLocations)
        {
            // 获取当前控制器和视图的文件夹路径
            string controllerName = context.Values["controller"] as string;
            string viewName = context.Values["action"] as string;

            // 指定子目录的名称
            string subdirectoryName = "Subdirectory"; // 替换为你的子目录名称

            // 构建新的视图位置
            foreach (var location in viewLocations)
            {
                yield return location.Replace("{0}", subdirectoryName + "/{0}"); // 替换视图名称中的占位符
                yield return location.Replace("{1}", subdirectoryName + "/{1}"); // 替换控制器名称中的占位符
            }
        }
    }
}
  1. 注册自定义的视图位置解析器。

在Startup.cs文件的ConfigureServices方法中,添加以下代码:

services.Configure(options =>
{
    options.ViewLocationExpanders.Add(new SubdirectoryViewLocationExpander());
});
  1. 创建一个子目录Subdirectory,并在其中创建对应控制器的视图文件。

例如,如果你有一个名为HomeController的控制器,你可以创建一个Subdirectory/Home文件夹,并在其中创建一个Index.cshtml的视图文件。

这样,ASP.NET Core MVC将会在子目录中搜索视图。

希望以上解决方法对你有所帮助!

相关内容

热门资讯

透视规律(微扑克ai辅助器苹果... 1、透视规律(微扑克ai辅助器苹果版)wepoke软件规律(详细辅助德州教程)一贯有挂;代表性(透视...
德州ai机器人!wepoke苹... 德州ai机器人!wepoke苹果版外挂,(aapoker)总是有挂(详细透视详细教程);原来确实真的...
aapoker有猫腻!鱼扑克有... aapoker有猫腻!鱼扑克有挂吗,(微扑克)原先真的是有挂(详细辅助存在挂教程);科技安装教程;1...
透视游戏(wpk透明挂)德州w... 透视游戏(wpk透明挂)德州wepower有外挂吗(详细辅助解说技巧)好像是有挂;无聊就玩这款真的有...
德州之星插件!来玩德州app有... WePoker透视辅助版本稳定性对比与推荐‌:德州之星插件!来玩德州app有挂吗,(wEpOke)一...
透视好友(wepoke辅助机器... 透视好友(wepoke辅助机器人)德扑ai人工智能(详细辅助详细教程)本然是有挂是一款可以让一直输的...
aapoker透明挂!wepo... 1、aapoker透明挂!wepoke软件透明挂多少钱,(wepOke)原来有挂(详细辅助2025版...
透视有挂(WePoKe透视挂)... 透视有挂(WePoKe透视挂)好运大菠萝有挂吗(详细辅助靠谱教程)果然真的是有挂是一款可以让一直输的...
德扑ai助手!德扑软件高端,(... 德扑ai助手!德扑软件高端,(wPK)往昔有挂(详细透视大神讲解),支持语音通讯、好友开房及战队组建...
透视讲解(aapoker有猫腻... 透视讲解(aapoker有猫腻)红龙扑克有没有外挂(详细辅助解密教程)往昔是真的有挂;一、AI软件牌...