ASP.NET MVC:WebPageBase.cs
| ylbtech-funcation-Utility: ASP.NET MVC:WebPageBase.cs |
充当表示 ASP.NET Razor 页的类的基类。
| 1.A,WebPageBase 抽象类返回顶部 |
#region 程序集 System.Web.WebPages, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35
// D:\work-XNY\XNYWeb\packages\Microsoft.AspNet.Webpages.3.2.3\lib\net45\System.Web.Webpages.dll
#endregion using System.Collections.Generic;
using System.IO;
using System.Runtime.CompilerServices; namespace System.Web.WebPages
{
//
// 摘要:
// 充当表示 ASP.NET Razor 页的类的基类。
public abstract class WebPageBase : WebPageRenderingBase
{
//
// 摘要:
// 初始化 System.Web.WebPages.WebPageBase 类以供继承的类实例使用。此构造函数只能由继承的类调用。
protected WebPageBase(); //
// 摘要:
// 对页面、布局页和分页之间共享的页数据提供类似属性的访问。
//
// 返回结果:
// 一个包含页数据的对象。
[Dynamic]
public override dynamic Page { get; }
//
// 摘要:
// 获取当前页上下文的 System.IO.TextWriter 对象的堆栈。
//
// 返回结果:
// System.IO.TextWriter 对象。
public Stack<TextWriter> OutputStack { get; }
//
// 摘要:
// 获取页面当前的 System.IO.TextWriter 对象。
//
// 返回结果:
// System.IO.TextWriter 对象。
public TextWriter Output { get; }
//
// 摘要:
// 对页面、布局页和分页之间共享的页数据提供类似数组的访问。
//
// 返回结果:
// 一个包含页数据的字典。
[Dynamic(new[] { false, false, true })]
public override IDictionary<object, dynamic> PageData { get; }
//
// 摘要:
// 获取或设置布局页的路径。
//
// 返回结果:
// 布局页的路径。
public override string Layout { get; set; } //
// 摘要:
// 使用指定的虚拟路径创建 System.Web.WebPages.WebPageBase 类的新实例。
//
// 参数:
// virtualPath:
// 要用于创建实例的虚拟路径。
//
// 返回结果:
// 新的 System.Web.WebPages.WebPageBase 对象。
public static WebPageBase CreateInstanceFromVirtualPath(string virtualPath);
//
// 摘要:
// 由内容页调用以创建指定的内容部分。
//
// 参数:
// name:
// 要创建的部分的名称。
//
// action:
// 在新部分中要执行的操作的类型。
public void DefineSection(string name, SectionWriter action);
//
// 摘要:
// 使用指定的参数,在一组相关的网页中执行代码。
//
// 参数:
// pageContext:
// 页的上下文数据。
//
// writer:
// 要用于编写执行 HTML 的编写器。
public void ExecutePageHierarchy(WebPageContext pageContext, TextWriter writer);
//
// 摘要:
// 使用指定的上下文、编写器和起始页,在一组相关的网页中执行代码。
//
// 参数:
// pageContext:
// 页的上下文数据。
//
// writer:
// 要用于编写执行 HTML 的编写器。
//
// startPage:
// 在页层次结构中开始执行的页。
public void ExecutePageHierarchy(WebPageContext pageContext, TextWriter writer, WebPageRenderingBase startPage);
//
// 摘要:
// 在一组相关的网页中执行代码。
public override void ExecutePageHierarchy();
//
// 摘要:
// 返回一个值,该值指示是否在页中定义了指定部分。
//
// 参数:
// name:
// 要搜索的部分的名称。
//
// 返回结果:
// 如果在页中定义了指定部分,则为 true;否则为 false。
public bool IsSectionDefined(string name);
//
// 摘要:
// 从 System.Web.WebPages.WebPageBase.OutputStack 实例顶部返回并移除上下文。
public void PopContext();
//
// 摘要:
// 在 System.Web.WebPages.WebPageBase.OutputStack 实例顶部插入指定的上下文。
//
// 参数:
// pageContext:
// 要推送到 System.Web.WebPages.WebPageBase.OutputStack 实例上的页上下文。
//
// writer:
// 页上下文的编写器。
public void PushContext(WebPageContext pageContext, TextWriter writer);
//
// 摘要:
// 在布局页中,将呈现不在指定部分中的内容页部分。
//
// 返回结果:
// 要呈现的 HTML 内容。
public HelperResult RenderBody();
//
// 摘要:
// 在其他页内呈现某一页的内容。
//
// 参数:
// path:
// 要呈现的页的路径。
//
// data:
// (可选)要传递给所呈现页的数据数组。在所呈现页中,可以使用 System.Web.WebPages.WebPageBase.PageData 属性来访问这些参数。
//
// 返回结果:
// 要呈现的 HTML 内容。
public override HelperResult RenderPage(string path, params object[] data);
//
// 摘要:
// 在布局页中,将呈现指定部分的内容并指定该部分是否为必需。
//
// 参数:
// name:
// 要呈现的部分。
//
// required:
// 要指定该部分为必需,则为 true;否则为 false。
//
// 返回结果:
// 要呈现的 HTML 内容。
public HelperResult RenderSection(string name, bool required);
//
// 摘要:
// 在布局页中,将呈现指定部分的内容。
//
// 参数:
// name:
// 要呈现的部分。
//
// 返回结果:
// 要呈现的 HTML 内容。
//
// 异常:
// T:System.Web.HttpException:
// name 部分已呈现。- 或 -name 部分已标记为必需,但却找不到。
public HelperResult RenderSection(string name);
//
// 摘要:
// 将指定的对象作为 HTML 编码的字符串写入。
//
// 参数:
// value:
// 要编码并写入的对象。
public override void Write(object value);
//
// 摘要:
// 将指定的 System.Web.WebPages.HelperResult 对象作为 HTML 编码的字符串写入。
//
// 参数:
// result:
// 要编码并写入的帮助器结果。
public override void Write(HelperResult result);
//
// 摘要:
// 无需先对指定的对象进行 HTML 编码,即可将其写入。
//
// 参数:
// value:
// 要写入的对象。
public override void WriteLiteral(object value);
//
// 摘要:
// 在派生类中重写时,将基于父网页的配置来配置当前网页。
//
// 参数:
// parentPage:
// 要从中读取配置信息的父页。
protected virtual void ConfigurePage(WebPageBase parentPage);
//
// 摘要:
// 尝试从 virtualPath 创建 WebPageBase 实例,并使用较简单的消息包装复杂的编译器异常
protected virtual WebPageBase CreatePageFromVirtualPath(string virtualPath, HttpContextBase httpContext, Func<string, bool> virtualPathExists, DisplayModeProvider displayModeProvider, IDisplayMode displayMode);
//
// 摘要:
// 初始化当前页。
protected virtual void InitializePage();
//
// 摘要:
// 返回用于呈现页面的文本编写器实例。
//
// 返回结果:
// 文本编写器。
protected internal override TextWriter GetOutputWriter();
}
}
WebPageBase 抽象类
| 1.B,返回顶部 |
| 1.C,返回顶部 |
| 1.D,返回顶部 |
![]() |
作者:ylbtech 出处:http://ylbtech.cnblogs.com/ 本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。 |
ASP.NET MVC:WebPageBase.cs的更多相关文章
- ASP.NET MVC:WebViewPage.cs
ylbtech-funcation-Utility: ASP.NET MVC:WebViewPage.cs 表示呈现使用 ASP.NET Razor 语法的视图所需的属性和方法. 1.A,WebVie ...
- ASP.NET MVC:UrlHelper.cs
ylbtech-funcation-Utility: ASP.NET MVC:UrlHelper.cs 充当表示 ASP.NET Razor 页的类的基类. 1.UrlHelper 类返回顶部 1-1 ...
- ASP.NET MVC:WebPageRenderingBase.cs
ylbtech-funcation-Utility: ASP.NET MVC:WebPageRenderingBase.cs 提供用于呈现使用 Razor 视图引擎的页的方法和属性. 1.A,WebP ...
- ASP.NET MVC:会导致锁定的会话
ASP.NET MVC:会导致锁定的会话 背景 一直没有意识到会话的访问会导致会话锁定,现在想想这样设计是非常合理的,不过某些情况下这样会导致同一个会话的并发访问非常低(只能串行化),好在MS提供了机 ...
- ASP.NET MVC:Razor 引入命名空间
原文:ASP.NET MVC:Razor 引入命名空间 页面中引用 c# @using MvcApplication83.Models @using MvcApplication83.Common 行 ...
- ASP.NET MVC:多语言的三种技术处理策略
ASP.NET MVC:多语言的三种技术处理策略 背景 本文介绍了多语言的三种技术处理策略,每种策略对应一种场景,这三种场景是: 多语言资源信息只被.NET使用. 多语言资源信息只被Javascrip ...
- ASP.NET MVC:利用ASP.NET MVC4的IBundleTransform集成LESS
ASP.NET MVC:利用ASP.NET MVC4的IBundleTransform集成LESS 背景 LESS确实不错,只是每次写完LESS都要手工编译一下有点麻烦(VS插件一直没有安装好),昨天 ...
- ASP.NET MVC:创建 ModelBinder 自动 Trim 所有字符串
ASP.NET MVC:创建 ModelBinder 自动 Trim 所有字符串 2010-12-29 21:32 by 鹤冲天, 4289 阅读, 14 评论, 收藏, 编辑 用户输入的字符串前后的 ...
- ASP.NET MVC:窗体身份验证及角色权限管理示例
ASP.NET MVC 建立 ASP.NET 基础之上,很多 ASP.NET 的特性(如窗体身份验证.成员资格)在 MVC 中可以直接使用.本文旨在提供可参考的代码,不会涉及这方面太多理论的知识. 本 ...
随机推荐
- codevs 1795 金字塔 2
codevs 1795 金字塔 2这个题比完全背包多了一个总数的限制,即一定要选(m+n)个,题中说总重量不超过n,所以至少选择m个重量为0的,然后初始化的时候,都填成重量为0的,然后再一个个地把它们 ...
- 004.SMB之guest级别配置
一 配置文件修改 注意: 1 share级别权限访问即,无任何验证共享,对guest开放. 2 新版samba4已取消share级别,可使用user级别配置成无验证共享. 1.1 全局配置文件修改 [ ...
- javascript编写带阴历的黄历
最近在做一个黄历的快应用(quickapp),需要涉及到公历转阴历,效果如下: 快应用(https://www.quickapp.cn/): 快应用是基于手机硬件平台的新型应用形态:标准是由主流手机厂 ...
- Lambda的分类(语句Lambda和表达式Lambda)
学习自 <C#本质论> Overview 在上一文中,我们简而又简的了解了一下,匿名方法和Lambda表达式,关于匿名方法这里暂且不表,本文我们来更加详细的了解一下Lambda表达式. 本 ...
- Django 性能测试
唐纳德·克努特(Donald Knuth)曾经说过:“不成熟的优化方案是万恶之源.”然而,任何一个承受高负载的成熟项目都不可避免地需要进行优化.在本文中,我想谈谈优化Web项目代码的五种常用方法.虽然 ...
- java基础记录(一):开发环境的配置
一.JDK的安装与环境变量配置 1.jdk下载与安装. jdk1.8.0_192下载地址 下载完成后,双击运行安装文件.可以选择你要安装的位置或者直接下一步,等待安装完成,最后关闭. 2.配置环境变量 ...
- BZOJ4205 : 卡牌配对
对于两张卡牌,如果存在两种属性值不互质,则可以匹配. 只考虑200以内的质数,一共有46个,可以新建3*46*46个点来表示一类属性值中有这两种质数的卡牌. 然后对于每张卡牌,枚举它的质因子,最多只有 ...
- hdu 5828 Rikka with Sequence 线段树
Rikka with Sequence 题目连接: http://acm.hdu.edu.cn/showproblem.php?pid=5828 Description As we know, Rik ...
- .net core中的System.Buffers名字空间
最近研究了一下.net core 2.1的基础类库,发现它引入了一个System.Buffers名字空间,里面提供了一系列比较实用的对象,便简单的管中窥豹浏览一下. ArrayPool<T> ...
- USBDM Kinetis Debugger and Programmer
Introduction The FRM-xxxx boards from Freescale includes a minimal SWD based debugging interface for ...
