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 中可以直接使用.本文旨在提供可参考的代码,不会涉及这方面太多理论的知识. 本 ...
随机推荐
- auth.User.groups: (fields.E304)
配置用户信息的models时,如果继承Abstractuser类时,报错: ERRORS:auth.User.groups: (fields.E304) Reverse accessor for 'U ...
- JAVA 图形开发中组件对齐方法及界面开发
/*文章中用到的代码只是一部分,需要源码的可通过邮箱联系我 1978702969@qq.com*/ 在上篇博客中提到了JAVA图形界面开发时的两种布局,流式布局和边框布局. 在实际使用中可能会发现,往 ...
- iOS技术篇:sizeToFit 和 sizeThatFits 区别
sizeToFit:会计算出最优的 size 而且会改变自己的size UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(, , , ...
- 心跳包(HeartBeat)
http://itindex.net/detail/52922-%E5%BF%83%E8%B7%B3-heartbeat-coderzh 几乎所有的网游服务端都有心跳包(HeartBeat或Ping) ...
- 优美的爆搜?KDtree学习
如果给你平面内一些点,让你求距离某一个指定点最近的点,应该怎么办呢? O(n)遍历! 但是,在遍历的过程中,我们发现有一些点是永远无法更新答案的. 如果我们把这些点按照一定顺序整理起来,省略对不必要点 ...
- BZOJ.1021.[SHOI2008]循环的债务(DP)
题目链接 不同面额的钞票是可以分开考虑的. ↑其实并不很明白具体(证明?),反正是可以像背包一样去做. f[x][i][j]表示用前x种面额钞票满足 A有i元 B有j元 (C有sum-i-j)所需交换 ...
- hdu 1116 敌兵布阵(树状数组区间求和)
题意: 给出一行数字,然后可以修改其中第i个数字,并且可以询问第i至第j个数字的和(i <= j). 输入: 首行输入一个t,表示共有t组数据. 接下来每行首行输入一个整数n,表示共有n个数字. ...
- [原创]浅谈H5页面性能测试
[原创]浅谈H5页面性能测试 H5页面我想各位都不陌生,随着移动互联网兴起,不管是App,还是H5都火起来了,最突出的2个表现是ios/android/前端等工程师薪水大涨,尤其是资深前端工程师40W ...
- Apache Kafka —一个不同的消息系统
Apache已经发布了Kafka 0.8,也是自从成为Apache软件基金会的顶级项目后Kafka的 第一个主版本. Apache Kafka是发布—订阅消息传递,实现了分布式提交日志,适用于离线和在 ...
- 咏南Mormot中间件接口
咏南Mormot中间件接口 只使用了MORMOT的HTTPS.SYS作为通讯,数据引擎使用FIREDAC,数据序列/还原是自行封装. 客户端支持FDMemeTable和ClientDataSet数据集 ...
