ASP.NET profile之 找不到存储过程'dbo.aspnet_CheckSchemaVersion'

完成profile的webconfig配置后,运行时出现【找不到存储过程'dbo.aspnet_CheckSchemaVersion' 】错误。

我的web.config配置如下:

   <connectionStrings>
    <add name="con1" connectionString="Data Source=HASO33CN/SQLEXPRESS;Initial Catalog=db_NetShop;
      Persist Security Info=True;User ID=sa;PWD=1;" providerName="System.Data.SqlClient"/>
  </connectionStrings>

    <system.web>
        <compilation debug="true" />
       <authentication mode="Windows" />
       <profile automaticSaveEnabled="true"  defaultProvider="SqlProvider">
        <providers>
          <clear/>
          <add name="SqlProvider" type="System.Web.Profile.SqlProfileProvider" connectionStringName="con1" applicationName="/"/>
        </providers>
        <properties>
          <add name="NNNN"  serializeAs="Xml" provider="SqlProvider"  ></add>
        </properties>
      </profile>
    </system.web> 

 程序调试代码:

    protected void Page_Load(object sender, EventArgs e)
    {
        Profile.NNNN = "gxs";
    }

出现如下错误

找不到存储过程 'dbo.aspnet_CheckSchemaVersion'。

解决方法

在C:/WINDOWS/Microsoft.NET/Framework/v2.0.50727目录下启动aspnet_regsql.exe,然后按照配置文件中的连接字串(web.config中的connectionStrings)进行配置,注意选中要用的数据库。

测试

打开SqlServer2005,在数据库中发现多了几十张表,其中有aspnet_Profile。另外发现多了几十个存储过程,其中有aspnet_CheckSchemaVersion存储过程。

打开aspnet_Profile表:【Profile.NNNN = "gxs"】记录被保存在该表中。

 

阅读更多
想对作者说点什么?

博主推荐

换一批

没有更多推荐了,返回首页