zoukankan      html  css  js  c++  java
  • Profile的简单的配置与操作

    下面由我来给大家配置一个ProfileProfile的用法

    只要我们配置节Profile配置好后那整个项目就都可以随时调用了,Profile中的类型是可以任意的,而且永久保存,如果永久保存的话那就要用到数据库了。下面配置一个userNameProfile的属性为string类型.

    1.要配置一下web.config文件中的<system.web>配置节中:<profile>配置节

     

     

    <profile defaultProvider="MySqlProfileProvider">

         <providers>

    <add name="MySqlProfileProvider" connectionStringName="KuConnectionString" applicationName="/"

    type="System.Web.Profile.SqlProfileProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"/>

          </providers>

    <profile defaultProvider="MySqlProfileProvider">

         <providers>

    <add name="MySqlProfileProvider" connectionStringName="KuConnectionString" applicationName="/"

    type="System.Web.Profile.SqlProfileProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"/>

          </providers>

          <properties>

            <add name="userName" type="system.string" serializeAs="Binary"/>

          </properties>

    </profile>

    </system.web>

    来解释一下上面的配置:

    defaultProvider="MySqlProfileProvider" 为使用MySqlProfileProvider为这个项目的默认profile,因为它的默认是安装 Visual Studio时自带的一个machine.config文件中的profile

    <add name="MySqlProfileProvider" connectionStringName="KuConnectionString" applicationName="/"

    type="System.Web.Profile.SqlProfileProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"/>

    为创建一个新的profile的配置节这里的name就是defaultProvider指定默认的,这样新创建的profile的配置节就成了我们要指定的操作。

    <add name="userName" type="system.string" serializeAs="Binary"/>

    这个配置节是配置profile的属性name为属性的关键字,type为这个属性的类型,serializeAs为指定是以二进制保存到数据库中。

    connectionStringName="KuConnectionString"为以要保存的数据库,为数据库连接字符串的name值

    如:<connectionStrings>

         <add name="KuConnectionString" connectionString="Data Source=localhost;Initial Catalog=ku;Integrated Security=True" providerName="System.Data.SqlClient"/>

    </connectionStrings>

    2.这时上面的配置好后就可创建数据库了

     要创建一个数据库要符合profile的存储结构就不能乱建了,下面我们到(C:"WINDOWS"Microsoft.NET"Framework"v2.0.50727

    v2.0.50727)是跟据你的版本号确定的文件夹,这时在这个文件夹下有一个名为:aspnet_regsql.exe的文件双击它后会出现一个向导,就是创建数据库你跟据这个向导一步一步地去做就可以了,在创建时可以就行选择你已有的数据库中,这样你的数据库中就会多出好几张表来,那就成功了。

    3.上面的准备好后就可在程序中进行应用了

    应用时非常简单:我们来实现一个从default1.aspx页点击一个按钮跳转到default2.aspx页面但同时给Profile.userName赋值并在default2.aspx页面中是进行显示这个值

    一个default1.aspx页面

               在一个按钮的单击事件中写上:

                       Profile.userName = "spring";

            Server.Transfer("default2.aspx");

    一个default2.aspx页面

                       在这个页面的要添加一个Label控件进行显示Profile.userName的值

                       在:

    protected void Page_Load(object sender, EventArgs e)

        {

            this.labText.Text = Profile.userName;

        }在这个加裁事件中指要把Profile.userName中的值取出给要显示控件的Text属性中就行了,非常简单吧,这里不用转换是因为我们在web.config文件中配置的时候userName就是string类型的。如果是其它的类型就需要做一下相对的转换了。

    实现后可以去数据库中看看aspnet_Profile表中就有了我们刚刚保存的数据了,这些数据的存储我们并没有写什么sql语句就只是配置了一下web.config文件而已,这些东西微软都已经给你封装好了你只要配置一下使Profile就可以轻松的永久的保存数据了,但这个数据是以二进制存储的,还可以是string类型的。

    不管怎么封装,它的后台不都得有sql语句去执行吗,要不怎么能把数据存到数据库中呢,是不?只不过是封装了你看不见了而已。如果大家有时间的话去想想微软是什么样的思想来开发的,又是怎么来实现这样的一个功能的?

    作者: 王春天
    出处: http://www.cnblogs.com/spring_wang/
    Email: spring_best@yeah.net
    QQ交流:903639067 
    QQ群:322581894 关于作者: 大连天翼信息科技有限公司 技术总监。 SNF快速开发平台 创始人。应用平台架构师、IT规划咨询专家、业务流程设计专家。 专注于快速开发平台的开发、代码生成器。同时专注于微软平台项目架构、管理和企业解决方案,多年项目开发与管理经验,精通DotNet系列技术Vue、.NetCore、MVC、Webapi、C#、WinForm等,DB(SqlServer、Oracle等)技术,移动端开发。熟悉Java、VB及PB开发语言。在面向对象、面向服务以及数据库领域有一定的造诣。现从事项目实施、开发、架构等工作。并从事用友软件产品U8、U9、PLM 客开工作。 如有问题或建议,请多多赐教! 本文版权归作者和CNBLOGS博客共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,如有问题,可以通过邮箱或QQ 联系我,非常感谢。
  • 相关阅读:
    linux之awk命令
    HDU 2097 Sky数 进制转换
    HDU 2077 汉诺塔IV
    HDU 2094 产生冠军 dfs加map容器
    HDU 2073 叠框
    HDU 2083 简易版之最短距离
    HDU 2063 过山车 二分匹配
    天梯 1014 装箱问题
    天梯 1214 线段覆盖
    天梯 1098 均分纸牌
  • 原文地址:https://www.cnblogs.com/spring_wang/p/Profile.html
Copyright © 2011-2022 走看看