DataBinder

首页 新随笔 联系 订阅 管理

我就在页面中拖了一个WebPartManager 什么也没干,一运行,出现错误
在网上逛了一下,有位仁兄说把连接字符串改为标准就可以了,试了一下,还是不行,正在找解决办法中..


 

Server Error in '/myWebSite' Application.

An error has occurred while establishing a connection to the server.  When connecting to SQL Server 2005, this failure may be caused by the fact that under the default settings SQL Server does not allow remote connections. (provider: SQL Network Interfaces, error: 26 - Error Locating Server/Instance Specified)

Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

SQLExpress database file auto-creation error:

The connection string specifies a local Sql Server Express instance using a database location within the applications App_Data directory. The provider attempted to automatically create the application services database because the provider determined that the database does not exist. The following configuration requirements are necessary to successfully check for existence of the application services database and automatically create the application services database:

  1. If the applications App_Data directory does not already exist, the web server account must have read and write access to the applications directory. This is necessary because the web server account will automatically create the App_Data directory if it does not already exist.
  2. If the applications App_Data directory already exists, the web server account only requires read and write access to the applications App_Data directory. This is necessary because the web server account will attempt to verify that the Sql Server Express database already exists within the applications App_Data directory. Revoking read access on the App_Data directory from the web server account will prevent the provider from correctly determining if the Sql Server Express database already exists. This will cause an error when the provider attempts to create a duplicate of an already existing database. Write access is required because the web server accounts credentials are used when creating the new database.
  3. Sql Server Express must be installed on the machine.
  4. The process identity for the web server account must have a local user profile. See the readme document for details on how to create a local user profile for both machine and domain accounts.



Source Error:

An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.

Stack Trace:

[SqlException (0x80131904): An error has occurred while establishing a connection to the server.  When connecting to SQL Server 2005, this failure may be caused by the fact that under the default settings SQL Server does not allow remote connections. (provider: SQL Network Interfaces, error: 26 - Error Locating Server/Instance Specified)]
            System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection) +173
            System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj) +199
            System.Data.SqlClient.TdsParser.Connect(Boolean& useFailoverPartner, Boolean& failoverDemandDone, String host, String failoverPartner, String protocol, SqlInternalConnectionTds connHandler, Int64 timerExpire, Boolean encrypt, Boolean trustServerCert, Boolean integratedSecurity, SqlConnection owningObject, Boolean aliasLookup) +1069
            System.Data.SqlClient.SqlInternalConnectionTds.OpenLoginEnlist(SqlConnection owningObject, SqlConnectionString connectionOptions, String newPassword, Boolean redirectedUserInstance) +606
            System.Data.SqlClient.SqlInternalConnectionTds..ctor(DbConnectionPoolIdentity identity, SqlConnectionString connectionOptions, Object providerInfo, String newPassword, SqlConnection owningObject, Boolean redirectedUserInstance) +193
            System.Data.SqlClient.SqlConnectionFactory.CreateConnection(DbConnectionOptions options, Object poolGroupProviderInfo, DbConnectionPool pool, DbConnection owningConnection) +219
            System.Data.ProviderBase.DbConnectionFactory.CreateNonPooledConnection(DbConnection owningConnection, DbConnectionPoolGroup poolGroup) +27
            System.Data.ProviderBase.DbConnectionFactory.GetConnection(DbConnection owningConnection) +49
            System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory) +89
            System.Data.SqlClient.SqlConnection.Open() +160
            System.Web.Management.SqlServices.GetSqlConnection(String server, String user, String password, Boolean trusted, String connectionString) +67
            [HttpException (0x80004005): Unable to connect to SQL Server database.]
            System.Web.Management.SqlServices.GetSqlConnection(String server, String user, String password, Boolean trusted, String connectionString) +123
            System.Web.Management.SqlServices.SetupApplicationServices(String server, String user, String password, Boolean trusted, String connectionString, String database, String dbFileName, SqlFeatures features, Boolean install) +89
            System.Web.Management.SqlServices.Install(String database, String dbFileName, String connectionString) +26
            System.Web.DataAccess.SqlConnectionHelper.CreateMdfFile(String fullFileName, String dataDir, String connectionString) +388
            



后来仔细想了一下,因为vs2005依赖的就是express版的sql 2005里的aspnetdb ,所以我加了一个连接串
<add name="LocalSqlServer" connectionString="Data Source=.;Initial Catalog=TestDataBase;Integrated Security=false;UID=sa;PWD=*****"
            providerName="System.Data.SqlClient" />
就是标准的添加,那位老兄没有说清楚,高兴的试一下吧.

The entry 'LocalSqlServer' has already been added

已经添加了?在哪里添加的?我怎么不知道?

去问了下牛人,了解到在自己版本的.net 下
c:/windows/microsoft.net/v2.0/Config/machine.config
要修改machine.config  原来如些.
我去看了一下,找到一行
<?xml version="1.0" encoding="UTF-8"?>
<!--
    Please refer to machine.config.comments for a description and
       the default values of each configuration section.

    For a full documentation of the schema please refer to
    http://go.microsoft.com/fwlink/?LinkId=42127

    To improve performance, machine.config should contain only those
    settings that differ from their defaults.
-->
... ...
  <connectionStrings>
    <add name=LocalSqlServer connectionString="data source=\SQLEXPRESS.;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|aspnetdb.mdf;User Instance=true" providerName="System.Data.SqlClient" />
  </connectionStrings>

果然已经有了这个连接串

于是去应用程序下的Web.config下加一句
<remove name="LocalSqlServer" />
嘿嘿
然后再添加上自己的
<add name="LocalSqlServer" connectionString="Data Source=.;Initial Catalog=TestDataBase;Integrated Security=false;UID=sa;PWD=*****"
            providerName="System.Data.SqlClient" />

一运行,发现还有错误,因为我自己的数据库里没有aspnetdb里的存储过程,不过听说membership带一个SP的创建脚本的
去看一下.

找到了
由于没有aspnetdb.mdf数据库,因此得先建立一个,这个可以通过aspnet_regsql.exe完成,该程序位于C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\下。
运行此配制程序,可以方便的把aspnetdb里的存储过程和表移植到sql Server 2000等处.
posted on 2006-09-06 16:12  数据绑定者  阅读(1339)  评论(1编辑  收藏  举报