ASP.net中Core自定义View查找位置的实例代码

2025-05-29 0 53

.NET Core 的内容处处可见,刷爆全球各大社区,所以,老周相信各位大伙伴已经看得不少了,故而,老周不考虑一个个知识点地去写,那样会成为年度最大的屁话,何况官方文档也很详尽。老周主要扯一下大伙伴们在入门的时候可能会疑惑的内容。

ASP.NET Core 可以在一个项目中混合使用 Web Pages 和 MVC ,这是老周最希望的,因为这样会变得更灵活。Web Pages 类似于我们过去的 Web 开发方式,以页面为单位,此模型侧重于功能划分。而 MVC 侧重于数据,有什么样的数据模型就有什么样的 Controller,有什么样的 Controller 就会对应什么样的 Action ,而 Action 又会有对应的 UI,即 View。所以说 MVC 是以数据为核心的。

PopulateValues():作为一种指定参数的方式存在,您的视图查找将根据每个请求而变化.由于您没有填充它,视图引擎使用先前请求中的缓存值.

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18
public class ThemeViewLocationExpander : IViewLocationExpander

{

public IEnumerable<string> ExpandViewLocations(ViewLocationExpanderContext context, IEnumerable<string> viewLocations)

{

string theme = context.Values["theme"];

if (string.IsNullOrWhiteSpace(theme))

{

theme = "default";

}

string[] newLocation = { $"Views/{theme}/{{1}}/{{0}}.cshtml"};

return viewLocations.Union(newLocation);

}

public void PopulateValues(ViewLocationExpanderContext context)

{

context.Values["theme"] = context.ActionContext.HttpContext.Request.Query["theme"].ToString();

}

}

?

1

2

3

4

5
//配置模版视图路径

services.Configure<RazorViewEngineOptions>(options =>

{

options.ViewLocationExpanders.Add(new ThemeViewLocationExpander());

});

到此这篇关于ASP.net中Core自定义View查找位置的实例代码的文章就介绍到这了,更多相关Core自定义View查找位置内容请搜索快网idc以前的文章或继续浏览下面的相关文章希望大家以后多多支持快网idc!

原文链接:https://www.cnblogs.com/fanfan-90/p/12716694.html

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

快网idc优惠网 建站教程 ASP.net中Core自定义View查找位置的实例代码 https://www.kuaiidc.com/97441.html

相关文章

发表评论
暂无评论