君子难得半日安

代码改变世界

Profile学习

2013-01-15 14:40  半日安  阅读(111)  评论(0)    收藏  举报

1. 什么是Profile。

     Profile是一个记录用户喜好的工具。作用和session和cockie有点相似,但不不同点在于Profile是持久存入数据库的。换句话说它的值和客户端及服务器端的状态完全没有关系。但它也有明显的缺点就是数据库记录需要定期修改,否则存入太多的用户的喜好确实很耗资源。

 2,Profile的配置

     2.1 Profile数据库的配置

          %windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_regsql.exe     

          如果你有sql server可以直接运行。

      这里面有Profile,role, User的一些表单,我们重点讲的是Profile

      2.1.1 我们先看下Profile的数据结构定义。

               aspnet_Profile

                    UserId                                   uniqueidentifier

                    PropertyNames                       ntext

                    PropertyValuesString               ntext

                    PropertyValuesBinary              image

                    LastUpdateDate                     datetime

     2.1.2 数据库配置。

             <connectionStrings>
                <clear/>
                <add name="LocalSqlServer" connectionString="Data Source=.;Initial Catalog=aspnetdb;Integrated Security=True"/>                                  
             </connectionStrings>

     2.2 Profile 定义

              <anonymousIdentification enabled="true"/>
             <profile defaultProvider="AspNetSqlProfileProvider" >
               <providers>
                  <clear/>
                  <add name="AspNetSqlProfileProvider"   connectionStringName="LocalSqlServer" applicationName="/" type="System.Web.Profile.SqlProfileProvider"/>
              </providers>
           <properties>
                <add name="UserName" allowAnonymous="true"/>
                <add name="LastSubmitTime" allowAnonymous="true" type="System.DateTime"/>
                <group name="Address">
                         <add name="City" allowAnonymous="true"/>
                        <add name="ZipCode" allowAnonymous="true"/>
               </group>
          </properties>
         </profile>

     通过这三步Profile就已经设置好了。

  3 Profile的使用

     3.1 设置属性

            System.Web.HttpContext.Current.Profile.SetPropertyValue("UserName", TextBox2.Text);

      3.2 获得属性值

           TextBox2.Text = System.Web.HttpContext.Current.Profile.GetPropertyValue("UserName").ToString();

 

 小结:

       剩下的东西就不用我多说了,大家基本上可以自己使用了,这只是我的一篇学习的文章还没有将这个用在项目中。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

               

      

君子难得半日安