欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

ASP.net中Core自定義View查找位置的實(shí)例代碼

 更新時(shí)間:2020年04月17日 08:07:29   作者:fanfan-90  
在本篇文章里小編給大家分享的是關(guān)于ASP.net中Core自定義View查找位置的實(shí)例代碼,需要的朋友們可以學(xué)習(xí)下。

.NET Core 的內(nèi)容處處可見,刷爆全球各大社區(qū),所以,老周相信各位大伙伴已經(jīng)看得不少了,故而,老周不考慮一個(gè)個(gè)知識(shí)點(diǎn)地去寫,那樣會(huì)成為年度最大的屁話,何況官方文檔也很詳盡。老周主要扯一下大伙伴們?cè)谌腴T的時(shí)候可能會(huì)疑惑的內(nèi)容。

ASP.NET Core 可以在一個(gè)項(xiàng)目中混合使用 Web Pages 和 MVC ,這是老周最希望的,因?yàn)檫@樣會(huì)變得更靈活。Web Pages 類似于我們過去的 Web 開發(fā)方式,以頁面為單位,此模型側(cè)重于功能劃分。而 MVC 側(cè)重于數(shù)據(jù),有什么樣的數(shù)據(jù)模型就有什么樣的 Controller,有什么樣的 Controller 就會(huì)對(duì)應(yīng)什么樣的 Action ,而 Action 又會(huì)有對(duì)應(yīng)的 UI,即 View。所以說 MVC 是以數(shù)據(jù)為核心的。

PopulateValues():作為一種指定參數(shù)的方式存在,您的視圖查找將根據(jù)每個(gè)請(qǐng)求而變化.由于您沒有填充它,視圖引擎使用先前請(qǐng)求中的緩存值.

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();
    }
  }
//配置模版視圖路徑
      services.Configure<RazorViewEngineOptions>(options =>
      {
        options.ViewLocationExpanders.Add(new ThemeViewLocationExpander());
      });

到此這篇關(guān)于ASP.net中Core自定義View查找位置的實(shí)例代碼的文章就介紹到這了,更多相關(guān)Core自定義View查找位置內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論