1

Visual Studio 2010 アプリケーション サーバーでアプリケーションを実行していましたが、IIS ローカル サーバーを使用するように変更したところ、すべてがクラッシュしました。次のエラーが表示されます:

System.Data.SqlClient.SqlException: データベース 'master' で CREATE DATABASE 権限が拒否されました。
ファイル D:\Code\EMSApplication\EMSApplication.Web\App_Data\ASPNETDB.mdf の自動命名データベースを接続しようとして失敗しました。同じ名前のデータベースが存在するか、指定されたファイルを開くことができないか、ファイルが UNC 共有にあります。

IIS の既定の Web サイトのアプリケーション プールの設定を Classic .NET AppPool に変更しました。

ここに画像の説明を入力

また、Classic .NET AppPool の ID を LocalSystem に変更しました。

ここに画像の説明を入力

また、NETWORK SERVICEの権限をフルに設定しました

ここに画像の説明を入力

接続文字列は次のとおりです。

Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\ASPNETDB.mdf;Integrated Security=True

しかし、どれも機能しませんでした。私はまだそのエラーが発生しています。どんな提案も私にとって非常に役に立ちます。

ありがとう。


Visual Studio 2010 のインストールに付属している SQL Server 2008 Express を使用しています。

4

1 に答える 1

6

問題は、明らかに、その SQL Server インスタンスに ASPNETDB という名前のデータベースが既に接続されていることです。私の仮定では、VS 開発 Web サーバーがまだ実行されており、それがデータベースに接続されているものです。その場合は、シャットダウンして IIS を再起動してみてください。問題はありません。それでもうまくいかない場合は、SSMS Expressにアクセスしてダウンロードし、ローカルの SQLExpress インスタンスに接続して、そこから既存のデータベースを切り離してみてください。

于 2012-03-21T16:51:15.303 に答える