刚开始使用WebPart控件遇到的一系列问题!

在VS2005+SQL Server 2005 Express 环境下,建立了一个webpart.aspx文件,然后将 WebPartManager 和WebPartZone 拖入视图页,并将 Calendar 加入WebPartZone中,接着按 F5 ,结果IE 报错(以上步骤是看了天极网上的一篇文章得来的,看来一些网上的技术文章在习得之前一定要搞清楚前提和环境),如下:

Configuration Error

Description: An error occurred during the processing of a configuration file required to service this request. Please review the specific error details below and modify your configuration file appropriately.

Parser Error Message: The specified connectionStringName, 'LocalSqlServer', was not registered.

Source Error:

Line 349:  <providers>
Line 350:        <add connectionStringName="LocalSqlServer"
Line 351:            name="AspNetSqlPersonalizationProvider" 
                     type="System.Web.UI.WebControls.WebParts.SqlPersonalizationProvider,
                     System.Web, Version=2.0.0.0, Culture=neutral,
                PublicKeyToken=b03f5f7f11d50a3a" /> Line 352: </providers> Line 353:


Source File: C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Config\web.config    Line: 351

看到错误信息,来源于 Web.config 文件,可是我网站根目录下的Web.config文件没有这样的内容阿,仔细看,原来是调用了本机上Framework\v2.0.50727\Config\下的Web.config。不知道如何着手,如是上MSDN,找到有关WebPart 的文章——“在 Visual Web Developer 中创建 Web 部件页(http://msdn2.microsoft.com/zh-CN/library/sk23dydw.aspx)”讲道:

先决条件:

  • 可标识各个用户的站点。如果您有一个已配置了 ASP.NET 成员资格的站点,则可以使用该站点作为本演练的起点。否则,本演练提供有关如何将站点配置为根据 Windows 用户帐户名标识用户的简介。

  • 用于创建网页的可视化设计环境。此演练使用 Visual Studio。

  • 配置过的个性化设置提供程序和数据库。Web 部件个性化设置默认情况下是启用的,它使用 SQL 个性化设置提供程序 (SqlPersonalizationProvider) 以及 Microsoft SQL Server Express Edition 存储个性化设置数据。本演练使用 SQL Server Express 和默认的 SQL 提供程序。如果安装了 SQL Server Express,则不需要进行任何配置。SQL Server Express 在安装 Microsoft Visual Studio 2005 时作为可选部分提供,也可以从 Microsoft.com 免费下载。若要使用 SQL Server 的某个完整版本,必须安装和配置 ASP.NET 应用程序服务数据库,并配置 SQL 个性化设置提供程序以连接到该数据库。有关详细信息,请参见为 SQL Server 创建和配置应用程序服务数据库

这才知道使用WebPart控件还有先决条件,但是该文章中说:如果安装了 SQL Server Express,则不需要进行任何配置。我就是这样的环境阿,为何报错呢? 不解……

继续在网上查找,发现如 SQL Server 有关,有网友说(还是外国的)在Framework\v2.0.50727\下提供一个工具——aspnet_regsql.exe,运行该工具是在SQL Server 下新建一个名为:aspnetdb的数据库,但是在 SQL Server Express下却运行不成功,这个可能是与我安装SQL有关。

没办法,来到MS 2003 Standard + SQL Server 2005 Standard   环境下, 执行aspnet_regsql.exe ,建立aspnetdb的数据库成功, 修改Web.config中关于SqlPersonalizationProvider 的部分(具体细节我就不多说了,网上相关资料也很多)。启动IE运行成功(在过程中,遇到SQL Server 用户连接登录数据库的问题,这折腾了半天,不过这些问题根据网页报错提示还是很好解决的),但是 让我不解的是:运行成功地网页中WebPart Zone 自身的“verb”动作close ,mini, restore 却没有显示,真是郁闷?

还在探索中……  

 

========================================
更新时间:2006-3-17

要更正本篇中的一个错误结论,“安装了 SQL Server Express,则不需要进行任何配置”这句话是完全正确的。在我的环境中之所以会报错,使由于我安装目录中的Web.config文件被该过了,增加了connectionStringName设置,我用该目录下的备份文件恢复,然后调试就没有任何问题。

posted on 2006-03-11 14:55  creanlin  阅读(1529)  评论(2编辑  收藏  举报

导航