<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吗?
答案 0 :(得分:1)
这是因为您需要将asp.net池的相同权限添加到您创建的文件中。
转到您的数据库文件并给他(右键单击文件,属性|服务)权限读/写以在池用户名下运行。
如果您自动创建了这个sql文件,那么该文件可能位于* c:\ Program Files \ Microsoft SQL Server \ MSSQL.1 \ MSSQL \ Data *
如果这不能解决问题,请转到SQL数据库,右键单击数据库,转到权限,然后添加池中的aspnet用户,并授予他连接权限。