王尘宇王尘宇

研究百度干SEO做推广变成一个被互联网搞的人

Asp.Net程序员与SEO - Viewstate优化(二)

最近有些忙,终于把Asp.net的 Viewstate优化(二) 这里出来。前面的Asp.Net程序员与SEO - Viewstate优化( 一 )可能看起来不是很明白,那么我这篇翻译后给大家留个原代码,可以下载下来看看。下面内容接上节开始:,我们的网页适配器在这个form的底部添加一个隐藏字段__SEOVIEWSTATE来放实际视图状态数据,唯一的局限性是你不能直接在asp.net form 内的表达式来表现它。然而,这种限制可以很容易地避免把表达的预留位置控制或内部另一个控制。深入解释这一限制看看这篇文章。,让我们通过一个例子来看适配器起的作用. 下面的ASP.NET page:,

最近有些忙,终于把Asp.net的 Viewstate优化(二) 这里出来。前面的Asp.Net程序员与SEO - Viewstate优化( 一 )可能看起来不是很明白,那么我这篇翻译后给大家留个原代码,可以下载下来看看。下面内容接上节开始:

我们的网页适配器在这个form的底部添加一个隐藏字段__SEOVIEWSTATE来放实际视图状态数据,唯一的局限性是你不能直接在asp.net form 内的表达式来表现它。然而,这种限制可以很容易地避免把表达的预留位置控制或内部另一个控制。深入解释这一限制看看这篇文章

让我们通过一个例子来看适配器起的作用. 下面的ASP.NET page:

以下为引用的内容
<%@ Page Language="C#"AutoEventWireup="true"CodeBehind="Default.aspx.cs"Inherits="SEOViewStateAdapterTest._Default" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<htmlxmlns="http://www.w3.org/1999/xhtml">
<headrunat="server">
   
<title></title>
</head>
<body>
   
<formid="form1"runat="server">
   
<div>
        Enter a message:
<br/>
       
<asp:TextBoxID="txtMessage"runat="server"></asp:TextBox><br/>
       
<asp:ButtonID="bSaveMessage"runat="server"Text="Save Message"onclick="bSaveMessage_Click"/><br/>
       
<asp:LabelID="lMessage"runat="server"></asp:Label><br/>
       
       
<p>Page generated at <asp:PlaceHolderID="PlaceHolder1"runat="server"><%= DateTime.Now.ToString("hh:mm dd/MM/yyy") %></asp:PlaceHolder></p>
   
</div>
   
</form>
</body>
</html>

关联的CS代码:

以下为引用的内容
using System ;
using System.Collections.Generic ;
using System.Web ;
using System.Web.UI ;
using System.Web.UI.WebControls ;

namespace SEOViewStateAdapterTest
{
   
public partial class _Default : System. Web . UI . Page
   
{
       
protected void Page_Load ( object sender, EventArgs e )
       
{
           
if ( ! Page. IsPostBack ) {
                ViewState
[ "previousMessage" ] = txtMessage. Text ;
           
}
       
}

       
protected void bSaveMessage_Click ( object sender, EventArgs e )
       
{
            lMessage.
Text = String . Format ( "The current message is '{0}'. The previous message was '{1}'" , txtMessage. Text , ( string ) ViewState [ "previousMessage" ]) ;
            ViewState
[ "previousMessage" ] = txtMessage. Text ;
       
}
   
}
}
 

相关文章

评论列表

发表评论:
验证码

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。