MVC在View的最后处理中是将View的文件页面编译成一个类,这个类必须继承自WebViewPage,WebViewPage默认添加对AjaxHelper和HtmlHelper的支持

public virtual void InitHelpers()
{
Ajax = new AjaxHelper<object>(ViewContext, this);
Html = new HtmlHelper<object>(ViewContext, this);
Url = new UrlHelper(ViewContext.RequestContext);
}

所有当我们在View页面中使用@语法时可以调用Html等方法,观察Orchard及Nop项目对WebViewPage中用的最多的是多语言化

        public Localizer T
{
get
{
if (_localizer == null)
{
//null localizer
//_localizer = (format, args) => new LocalizedString((args == null || args.Length == 0) ? format : string.Format(format, args)); //default localizer
_localizer = (format, args) =>
{
var resFormat = _localizationService.GetResource(format);
if (string.IsNullOrEmpty(resFormat))
{
return new LocalizedString(format);
}
return
new LocalizedString((args == null || args.Length == 0)
? resFormat
: string.Format(resFormat, args));
};
}
return _localizer;
}
}

这俩项目还在自定义的Webviewpage中自定义了一些局部标签。

在Views中的Web.config中修改如下节点值,可将系统默认webviewpage修改成自定义的

   <system.web.webPages.razor>
<host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=5.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
<pages pageBaseType="Nop.Web.Framework.ViewEngines.Razor.WebViewPage">
<namespaces>
<add namespace="System.Web.Mvc" />
<add namespace="System.Web.Mvc.Ajax" />
<add namespace="System.Web.Mvc.Html" />
<add namespace="System.Web.Routing" />
<add namespace="Nop.Web.Framework" />
<add namespace="Nop.Web.Framework.UI" />
<add namespace="Nop.Web.Framework.UI.Captcha" />
</namespaces>
</pages>
</system.web.webPages.razor>

  

最新文章

  1. (转) Wp7 list 中列表项多样化的解决方案-Custom DataTemplateSelector
  2. VMware Workstation 11, 客户机Ubuntu14.04.1 LTS 64bit,宿主机Windows 8.1 64bit,剪贴板共享(copy and paste)失效问题
  3. 网络闪段致slave 出错分析
  4. box unboxing(装箱 拆箱) C#编程指南
  5. python asyncio笔记
  6. OpenJDK 8 on Windows
  7. 通过调整表union all的顺序优化SQL
  8. JVM的内存分区
  9. Centos 6.7 KVM下安装windows 7系统
  10. hql查询实例
  11. TensorFlow之多核GPU的并行运算
  12. MachineLearningOnCoursera
  13. php 定时任务
  14. 阿里云对象存储 OSS,不使用主账号,使用子账号来访问存储内容
  15. LCA(最近公共祖先)算法
  16. 从武侠中的兵器看待数据访问工具——Hibernate Spring.Data Mybatis
  17. [linux]signal函数不起作用
  18. Tomcat-----&gt;tomcat配置虚拟主机(搭建网站)mac
  19. MSDN中回调函数的讲解及其C#例子:用委托实现回调函数
  20. java多线程(1) 线程的基本概念

热门文章

  1. HDU 4612 Warm up (边双连通分量+DP最长链)
  2. 学习:java设计模式—工厂模式
  3. js把div固定在页面的右下角
  4. ECshop 二次开发模板教程4
  5. wifi详解(三)
  6. button捕捉回车键
  7. TestNG传参的几种方式
  8. 《Python核心编程》 第十章 错误和异常
  9. ASP.NET QueryString乱码解决问题
  10. 【算法与数据结构】字符串匹配之KMP算法