razor - 有没有办法告诉 Razor(DNN 的视图引擎)为 MVC 模块使用不同的视图文件夹?
问题描述
我正在尝试在 DNN 的自定义 MVC 模块中为我的视图使用多个文件夹。目标是在模块设置中选择一个主题,然后根据设置使用不同的视图文件夹(即为操作使用不同的 cshtml 文件)。有没有办法告诉剃须刀它应该先查找其他位置?(我可以将 DNN 中的 ViewLocationExpander 用于我的模块吗?)谢谢!
解决方案
我了解您希望进行某种应用设置并让 MVC 使用该设置为您选择视图。我相信这是可能的,但是如果使用 @RenderPage() 或 @RenderPartial() 对您尝试做的事情有意义,那么有一种更简单、技术含量较低的方法可以做到这一点。
所以想象你从_index.cshtml
您可以将文件放在文件夹中并构建路径(想象设置类似于 Path = "live" 或 "staging"):
@RenderPage(myApp.Settings.Path + "/_List-Filtered.cshtml",
title = "No filters",
index = myIndex
)
或者直接修改文件名代替
@{
string myViewname = "Person";
}
@RenderPage("_List__" + myViewName + "--Filtered.cshtml")
推荐阅读
- algorithm - minimax 和/或 alpha-beta 搜索如何帮助玩游戏?
- r - aggregate.data.frame(as.data.frame(x), ...) 中的错误:参数必须具有相同的长度
- google-apps-script - 尝试为通过表单“文件上传”部分上传的文件设置“任何有链接的人都可以查看”的权限
- ruby - 访问浏览器打印弹出窗口以进行测试
- javascript - 需要 VueJS Getter 仅将最后一个 JSON 属性的所有值作为数组返回
- django - 可以在 Django 中自定义模型包路径
- r - 展开 R 公式
- c - 如果网络上的所有机器都使用 little-endian,我是否应该转换为网络字节顺序 (hton*)?
- c++ - 最深的mipmap级别不是所有纹素的平均值吗?
- java - @Transactional saveAll 不适用于第二个数据源 Spring JPA 中的表