1
<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"/>

上記の 2 行を 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.

しかし、SessionをSQLモードで使用するのは初めてなので、それらに従う方法がわかりません...

詳細: 数秒間一時的にセッションが必要です。取得した動的コントロールの状態を保存する必要があります。その状態モードで発生する可能性があると思われる問題は、ユーザーと一緒に 20 分間ドラッグすると、アプリケーションの速度が低下することです。代わりにviewStateを使用する必要がありますか?

4

1 に答える 1

1

これは、作成したファイルに asp.net プールと同じ権限を追加する必要があるためです。

データベースファイルに移動し、プールユーザー名で実行するための読み取り/書き込み権限を彼に与えます (ファイルを右クリックし、[プロパティ] | [セキュリティ])。

この sql ファイルを自動作成した場合、ファイルはおそらく * c:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Data*にあります。

これで解決しない場合は、SQL データベースにも移動し、データベースを右クリックして [アクセス許可] に移動し、プールの aspnet ユーザーも追加して、接続する権限を与えます。

于 2011-06-18T20:04:17.173 に答える