问题设置会话sql模式?

时间:2011-06-18 16:47:43

标签: asp.net session-state sqlexception

<add name="SqlState" connectionString="Data Source=localhost;DataBase=AnyNameOfServerState;Integrated Security=True" providerName="System.Data.SqlClient"/>

<sessionState mode="SQLServer" sqlConnectionString="SqlState" allowCustomSqlDatabase="true" cookieless="false" timeout="20"/>

我尝试将上面两行放入我的web.config文件中,然后运行代码: 我明白了:

System.Data.SqlClient.SqlException:

MSDN给了我以下提示:

  

确认您使用有​​效凭据进行连接。

Make sure that the credentials you are supplying are valid. For more information, see How to: Access SQL Server Using Predetermined Credentials.

验证服务器名称是否正确以及服务器是否正在运行。

Make sure that you are using the correct server name, and that the server can be reached.

但我不知道如何遵循它们,因为这是我第一次在SQL模式下使用Session,...

更多说明:我暂时需要会话几秒钟,我需要保存我所拥有的动态控件的状态。我认为我可能遇到的状态模式的问题是它是否会拖延用户20分钟,从而减慢我的应用程序速度。我应该使用viewState吗?

1 个答案:

答案 0 :(得分:1)

这是因为您需要将asp.net池的相同权限添加到您创建的文件中。

转到您的数据库文件并给他(右键单击文件,属性|服务)权限读/写以在池用户名下运行。

如果您自动创建了这个sql文件,那么该文件可能位于* c:\ Program Files \ Microsoft SQL Server \ MSSQL.1 \ MSSQL \ Data *

如果这不能解决问题,请转到SQL数据库,右键单击数据库,转到权限,然后添加池中的aspnet用户,并授予他连接权限。