ASP.NET 2.0 中收集的小功能点(转)

1.asp.net 2.0中的MaxPageStateFieldLength 属性
在asp.net 2.0中,可以强制对viewstate进行分段传输了,使用的是Page.MaxPageStateFieldLength 属性,可以设置viewstate中,每个页面状态字段的最大字节数。格式如下,要在WEB.CONFIG文件里设置的:
<pages maxPageStateFieldLength="5" />
其中,将设置把viewstate为不超过5字节,如果实际的viewstate超过该值,将进行分段传输,但每个分段的大小依然不超过maxPageStateFieldLength中的设置值, 默认设置值为-1,表示不对其进行分段传输。
2.Click button only once in asp.net 2.0
1 protected void Page_Load(object sender, EventArgs e)
2 {
3 PostBackOptions options = new PostBackOptions(Button1,string.Empty);
4
5 StringBuilder sb = new StringBuilder();
6 if (Button1.CausesValidation && this.GetValidators(Button1.ValidationGroup).Count > 0)
7 {
8 options.ClientSubmit = true;
9 options.PerformValidation = true;
10 options.ValidationGroup = Button1.ValidationGroup;
11
12 sb.Append("if (typeof(Page_ClientValidate) == 'function')");
13 sb.Append("if(Page_ClientValidate(\"" + Button1.ValidationGroup + "\")==false) return false;");
14 }
15 if (!string.IsNullOrEmpty(Button1.PostBackUrl))
16 options.ActionUrl = HttpUtility.UrlPathEncode(Button1.ResolveClientUrl(Button1.PostBackUrl));
17
18 sb.Append("this.disabled = true;");
19 sb.Append(ClientScript.GetPostBackEventReference(options));
20 sb.Append(";");
21 Button1.Attributes.Add("onclick", sb.ToString());
22 }
3.asp.net 2.0中得到sqldatasource返回的行数
在asp.net 2.0中,gridview是和sqldatasource控件绑定的,那么如何得到sqldatasource返回的记录的行数呢?比如sqldatasource控件中用select * from ....,如何返回其记录行数?在.net 2.0中,可以通过sqldatasource的OnSelected事件实现,并且对select事件SqlDataSourceStatusEventArgs参数中的AffectedRows属性设置一下就可以了,具体核心代码如下:
protected void SqlDataSource1_Selected(object sender, SqlDataSourceStatusEventArgs e)
{
totalRows.Text = e.AffectedRows.ToString();
}
<asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="Data Source=(local);Initial Catalog=Northwind;user id=sa;password=123456;" ProviderName="System.Data.SqlClient" SelectCommand="SELECT [CustomerID], [CompanyName], [ContactName] FROM [Customers]" OnSelected="SqlDataSource1_Selected"></asp:SqlDataSource>
4.在asp.net 1.1中,当要在page_load页面中,设置某个控件为默认的焦点按钮(也就是默认焦点是在这个控件上的),可能要用到javascript的代码,而在ASP.NET 2.0中,不用这些麻烦了,在form代码中,使用
defaultbutton和 defaultfocus属性就可以了,比如
<form id="Form1"
defaultbutton="BtnSubmit"

defaultfocus="TextBox1"

runat="server">
则在页面加载时,默认的button按钮时btnsubmit,焦点默认就在texbox1上了
5.asp.net 2.0中的弹出对话框

在asp.net 1.1中,要做1个弹出的对话框的话,一般是在服务端的代码中这样写:

btnClick.Attributes.Add("onclick", "return confirm('Are you sure?');");

现在在ASP.NET 2.0中,只要使用客户端的代码就可以拉,新多了个onclientclick,这样写
<asp:button id="btnClick" runat="server" OnClientClick="return confirm('Are you sure?');" text="Button"></asp:button>
5.自定义的页面控件,
比如在ASP。NET 1。1中,要声明自定义的页面控件,
通常要在用到的每页都要加入register prefix=........这样的,很麻烦,而在asp.net 2.0中,如果你确定一个页面自定义控件要在
整个项目中用到,只需要在WEB.CONFIG中加入
<system.web>
<pages>

<controls>

<add tagPrefix="prefixname" namespace="namespacename "/>

</controls>

</pages>

</system.web>
其中prefixname为控件的标识,namespace为命名空间就可以了。

(0)

相关推荐

  • ASP.NET 2.0 中收集的小功能点(转)

    1.asp.net 2.0中的MaxPageStateFieldLength 属性 在asp.net 2.0中,可以强制对viewstate进行分段传输了,使用的是Page.MaxPageStateFieldLength 属性,可以设置viewstate中,每个页面状态字段的最大字节数.格式如下,要在WEB.CONFIG文件里设置的:<pages maxPageStateFieldLength="5" />其中,将设置把viewstate为不超过5字节,如果实际的views

  • 在ASP.NET 2.0中操作数据之十九:给编辑和新增界面增加验证控件

    导言 在前面三节的示例中,GridView和DetailsView控件使用的是绑定列和CheckBoxField(绑定GridView和DetailsView时,通过智能标记可以令VS根据数据库自动增加对应的类型).当编辑GridView或者DetailsView中的一行时,非只读属性的绑定列将自动转为textbox,以便用户修改现有的数据.同样地,当在DetailsView控件中新增记录时,InsertVisible属性为true(默认值)的绑定列会呈现出空的textbox,以接受用户输入.C

  • 在ASP.NET 2.0中操作数据之一:创建一个数据访问层

    导言 作为web开发人员,我们的生活围绕着数据操作.我们建立数据库来存储数据,写编码来访问和修改数据,设计网页来采集和汇总数据.本文是研究在ASP.NET 2.0中实现这些常见的数据访问模式之技术的长篇系列教程的第一篇.我们将从创建一个软件框架开始,这个框架的组成部分包括一个使用强类型的DataSet的数据访问层(DAL),一个实施用户定义的业务规则的业务逻辑层(BLL),以及一个由共享页面布局的ASP.NET网页组成的表现层.在打下这个后端的基础工作之后,我们将开始转向报表,示范如何显示,汇总

  • ASP.NET 2.0中的页面输出缓存

    静态页面全部内容保存在服务器内存中.当再有请求时,系统将缓存中的相关数据直接输出,直到缓存数据过期.这个过程中,缓存不需要再次经过页面处理生命周期.这样可以缩短请求响应时间,提高应用程序性能.很显然,页面输出缓存适用于不需要频繁更新数据,而占用大量时间和资源才能编译生成的页面.对于那些数据经常更新的页面,则不适用.默认情况下,ASP.NET 2.0启用了页面输出缓存功能,但并不缓存任何响应的输出.开发人员必须通过设置,使得某些页面的响应成为缓存的一部分. 设置页面输出缓存可以使用以下两种方式:一

  • 在ASP.NET 2.0中操作数据之三:创建母版页和站点导航

    导言 通常,用户友好的个性化站点都有着一致的,站点统一的页面布局和导航体系.Asp.net 2.0引入的两个新特性给我们在统一站点的页面布局和站点导航上提供了简单而有效的工具,它们是母板页和站点导航.母板页允许开发者创建统一的站点模板和指定的可编辑区域.这样,aspx页面只需要给模板页中指定的可编辑区域提供填充内容就可以了,所有在母板页中定义的其他标记将出现在所有使用了该母板页的aspx页面中.这种模式允许开发者可以统一的管理和定义站点的页面布局,因此可以容易的得到拥有统一的视觉和感觉的页面并且

  • ASP.NET 2.0中预设的cookie

    今早在老外的BLOG上看到这个说法,不妨留意一下: 如果你在asp.net 2.0中使用FormsAuthentication,并且将cookie设置为持久状态,那么其持续时间默认是30分钟的,而不是asp.net 1.1中的50年,因为50年的话太不安全了,你的计算机会被人卖掉的.如果要更改的话,可以使用timeout属性更改 <authentication mode="forms"> <form loginUrl="login.aspx" ti

  • 在ASP.NET Core5.0中访问HttpContext的方法步骤

    ASP.NET Core 应用通过 IHttpContextAccessor 接口及其默认实现 HttpContextAccessor 访问 HttpContext. 只有在需要访问服务内的 HttpContext 时,才有必要使用 IHttpContextAccessor. 通过 Razor Pages 使用 HttpContext Razor Pages PageModel 公开 HttpContext 属性: public class AboutModel : PageModel { pu

  • 在ASP.NET 2.0中操作数据之十六:概述插入、更新和删除数据

    导言 结束前面的几节,我们已经探讨过了如何使用GridView.DetailsView和FormView控件来显示数据.这些控件简单地操作提供给它的数据.一般地,这些控件通过使用一个数据源控件,例如ObjectDataSource来存取数据.我们已经看过了ObjectDataSource是如何在ASP.NET页面和潜在的数据之间扮演一个代理的角色.当一个GridView需要显示数据时,它调用ObjectDataSource的Select()方法,这个方法转而调用一个来自我们的业务逻辑层(BLL)

  • 在ASP.NET 2.0中操作数据之七十二:调试存储过程

    导言: Visual Studio有很多的调试功能.我们只需要稍稍点点鼠标,敲敲键盘就可以使用断点(breakpoints)来打断某个程序的执行,并查看其状态.除了调试代码以外,Visual Studio也支持对SQL Server里面的存储过程进行调试.就像可以在ASP.NET页面的后台代码类或Business Logic Layer class类里设置断点一样,我们也可以在存储过程里设置断点. 本文我们将考察如何在Visual Studio的Server Explorer里进入存储过程并设置

  • 在ASP.NET 2.0中操作数据之六十四:GridView批量添加数据

    导言: 在前面的第62章<GridView批量更新数据>里,我们用GridView控件里定制了一个批编辑界面,同样的我们也可以定制一个批添加界面.假设有这种情况,我们接受一批从Tokyo(东京)发过来的货物:6种不同的tea 和 coffee,如果用户在一个DetailsView控件里一次输入一个产品,他将会重复的输入很多相同的值,比如相同的种类(Beverages),相同的供应商(Tokyo Traders),相同的discontinued值(False),以及相同的order值(0).重复

随机推荐