zoukankan      html  css  js  c++  java
  • ASP.NET 2.0揭秘读书笔记七——使用用户配置文件Profile

         ASP.NET 2.0 Framework提供了一种不用于cookie和Session状态的方式存储用户信息:Profile对象。Profile提供强类型、可持久化的Session状态表单。
        可以在应用程序的根Web配置文件定义一组Profile属性来创建Profile。ASP.NET    Framework 在后台动态编译一个包含这些属性的类。
    <?xml version="1.0"?>
    <configuration>
    <system.web>
       <profile>
        <properties>
          <add name="firstName" />
          <add name="lastName" />
          <add name="numberOfVisits" type="Int32" defaultValue="0" />
        </properties>
      </profile>

    </system.web>
    </configuration>
        当定义Profile属性时,可以使用下面的属性:
    •    Name——用于指定属性的名称;
    •    Type——指定属性的类型,默认是字符串类型;
    •    defaultValue——指定属性默认值;
    •    readOnly ——是否属性只读;
    •    serializeAs——用于指定一个属性如何持久化为静态持久化数据;

    •     allowAnonymous ——是否允许匿名用户读写属性;
    •     provider——用于关联属性到特定的Profile提供程序;
    •    customProviderData ——用于传递自定义的数据到Profile提供程序。
         理解Profile是持久化的很重要,如果应用程序为一个用户设置了Profile属性,那么即使这个用户一直没有回到网站,网站也会为其保留Profile属性值。
        Profile对象使用提供程序模型,默认的Profile提供程序是SqlProfileProvider.默认情况下,该提供程序保存Profile数据到名为ASPNETDB.mdf的SQL Server 2005 Express数据库中,数据库保存在应用程序的App_Code文件夹。如果数据库不存在,第一次使用Profile对象时它会被自动创建。

    创建用户配置文件组
        如果需要定义很多的Profile属性,则将这些Profile属性分成组更易管理,如下所示:
    <?xml version="1.0"?>
    <configuration>
    <system.web>

      <profile>
        <properties>
          <group name="Preferences">
            <add name="BackColor" defaultValue="lightblue"/>
            <add name="Font" defaultValue="Arial"/>
          </group>
          <group name="ContactInfo">
            <add name="Email" defaultValue="Your Email"/>
            <add name="Phone" defaultValue="Your Phone"/>
          </group>
        </properties>
      </profile>

    </system.web>
    </configuration>
    在代码中使用:
    lblEmail.Text = Profile.ContactInfo.Email;
    lblPhone.Text = Profile.ContactInfo.Phone;

  • 相关阅读:
    JavaScript 时间帮助封装
    EntityFramework 基类重写
    sql server 大数据, 统计分组查询,数据量比较大计算每秒钟执行数据执行次数
    C# DataTable 转实体对象
    EF自动创建数据库步骤之四(启用数据库初始器)
    EF自动创建数据库步骤之三(自定义数据库初始器)
    EF自动创建数据库步骤之二(继承DbContext类)
    EF自动创建数据库步骤之一(实体类写法)
    十大排序算法_java实现
    位运算
  • 原文地址:https://www.cnblogs.com/zoupeiyang/p/1452356.html
Copyright © 2011-2022 走看看