返回首页
当前位置: 主页 > 网络编程 > .Net实例教程 >

ASP.NET-个性化

时间:2020-01-16 16:01来源:知行网www.zhixing123.cn 编辑:麦田守望者

 网站设计用于用户的反复访问。个性化允许站点记住用户身份和其他信息详细信息,并为每个用户提供个性化的环境。

ASP.NET提供用于个性化网站的服务,以适合特定客户的喜好和喜好。

了解配置文件

ASP.NET个性化服务基于用户配置文件。用户配置文件定义有关站点所需用户的信息类型。例如,姓名,年龄,地址,出生日期和电话号码。

此信息在应用程序的web.config文件中定义,并且ASP.NET运行时读取并使用它。这项工作由个性化提供者完成。

从用户数据获得的用户配置文件存储在ASP.NET创建的默认数据库中。您可以创建自己的数据库来存储配置文件。概要文件数据定义存储在配置文件web.config中。

让我们创建一个示例站点,我们希望我们的应用程序在该站点上记住用户详细信息,例如姓名,地址,出生日期等。在<system.web>元素内的web.config文件中添加配置文件详细信息。

<configuration> <system.web>  <profile>    <properties>       <add name="Name" type ="String"/>       <add name="Birthday" type ="System.DateTime"/>              <group name="Address">          <add name="Street"/>          <add name="City"/>          <add name="State"/>          <add name="Zipcode"/>       </group>           </properties> </profile>  </system.web> </configuration>

当在web.config文件中定义了配置文件时,可以通过当前HttpContext中的Profile属性使用该配置文件,也可以通过页面使用该配置文件。

添加文本框以接受配置文件中定义的用户输入,并添加用于提交数据的按钮:

个性化

更新Page_load以显示配置文件信息:

using System; using System.Data; using System.Configuration;  using System.Web; using System.Web.Security;  using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls;  public partial class _Default : System.Web.UI.Page  {    protected void Page_Load(object sender, EventArgs e)    {       if (!this.IsPostBack)       {          ProfileCommon pc=this.Profile.GetProfile(Profile.UserName);                    if (pc != null)          {             this.txtname.Text = pc.Name;             this.txtaddr.Text = pc.Address.Street;             this.txtcity.Text = pc.Address.City;             this.txtstate.Text = pc.Address.State;             this.txtzip.Text = pc.Address.Zipcode;             this.Calendar1.SelectedDate = pc.Birthday;          }       }    } }

为“提交”按钮编写以下处理程序,以将用户数据保存到配置文件中:

protected void btnsubmit_Click(object sender, EventArgs e) {    ProfileCommon pc=this.Profile.GetProfile(Profile.UserName);        if (pc != null)    {       pc.Name = this.txtname.Text;       pc.Address.Street = this.txtaddr.Text;       pc.Address.City = this.txtcity.Text;       pc.Address.State = this.txtstate.Text;       pc.Address.Zipcode = this.txtzip.Text;       pc.Birthday = this.Calendar1.SelectedDate;              pc.Save();    } }

首次执行页面时,用户需要输入信息。但是,下次用户详细信息将自动加载。

<add>元素的属性

除了我们使用的名称和类型属性之外,<add>元素还有其他属性。下表说明了其中一些属性:

属性 描述
名称 属性的名称。
类型 默认情况下,该类型为字符串,但它允许任何完全限定的类名作为数据类型。
序列化为 序列化此值时使用的格式。
只读 只读配置文件值无法更改,默认情况下此属性为false。
默认值 如果配置文件不存在或没有信息,则使用默认值。
allowAnonymous 一个布尔值,指示是否可以将此属性与匿名概要文件一起使用。
提供者 应该仅用于管理此属性的配置文件提供程序。

匿名个性化

匿名个性化允许用户在标识自己之前对站点进行个性化。例如,Amazon.com允许用户在登录之前在购物车中添加商品。要启用此功能,可以将web.config文件配置为:

<anonymousIdentification enabled ="true" cookieName=".ASPXANONYMOUSUSER"    cookieTimeout="120000" cookiePath="/" cookieRequiresSSL="false"    cookieSlidingExpiration="true" cookieprotection="Encryption"    coolieless="UseDeviceProfile"/>
------分隔线----------------------------
标签(Tag):
------分隔线----------------------------
推荐内容
  • ASP.NET-错误处理

    ASP.NET中的错误处理包括三个方面: 跟踪 -在页面级别或应用程序级别跟踪程序执行。 ...

  • ASP.NET-个性化

    网站设计用于用户的反复访问。 个性化允许站点记住用户身份和其他信息详细信息,并为...

  • ASP.NET-自定义控件

    ASP.NET允许用户创建控件。 这些用户定义的控件分为以下几类: 用户控件 自定义控件 ...

  • ASP.NET-数据绑定

    每个ASP.NET Web表单控件都从其父Control类继承DataBind方法,这使它具有将数据绑定到...

  • ASP.NET-数据源

    数据源控件与数据绑定控件进行交互,并隐藏复杂的数据绑定过程。 这些工具可将数据提...

  • ASP.NET-Ajax控件

    AJAX代表异步JavaScript和XML。 这是一种跨平台技术,可加快响应时间。 AJAX服务器控...

猜你感兴趣