主に以下の私の質問 #1 に答えようとしていますが、より多くの知識をいただければ幸いです。
調査中にこれらのリソースを使用しようとしましたが、失敗しました:
http://social.msdn.microsoft.com/Forums/en/sqldatabaseengine/thread/f5eb164d-9774-4864-ae05-cac99740949b (このエラーについて: ユーザーのローカル アプリケーション データ パス。ユーザーがコンピュータ上にローカル ユーザー プロファイルを持っていることを確認してください。接続は閉じられます。 )
http://social.msdn.microsoft.com/forums/en-US/sqlexpress/thread/6dfdcc22-7a81-4e8f-a947-c1ce6982d4b3/ (このエラーの場合: データベース マスターで CREATE DATABASE 権限が拒否されました。ファイルの自動命名データベース ? に失敗しました。同じ名前のデータベースが存在するか、指定されたファイルを開くことができないか、または UNC 共有にあります。 )
質問
1.) IIS 7 で Telerik Rad Controls for ASP.NET AJAX "Live Demos" プロジェクトを実行しているときにこのエラーが発生するのはなぜですか (Telerik Live Demos の実行は、この接続文字列で ASP.NET 開発サーバーを使用して正常に動作します)。
ユーザーのローカル アプリケーション データ パスの取得に失敗したため、SQL Server のユーザー インスタンスを生成できませんでした。ユーザーがコンピューター上にローカル ユーザー プロファイルを持っていることを確認してください。接続が閉じられます。
2.) ASP.NET 開発サーバーおよび SSMSE とは異なり、IIS 7 で SQL Server Express インスタンスを作成する方法
3.) 異なるコンテキストで Web サイトを実行するときに許可されない SQL 接続文字列の特定の属性がありますか (#2 に基づく)。
環境:
ASP.NET 開発サーバー経由で「Live Demos」.NET 3.5 ASP.NET Web アプリケーションを実行していません (システム トレイにポップアップし、Visual Studio で再生をクリックした後にポートを選択する機能)。それはうまくいきます!IIS 7 で Web サイトを実行しています。SQL Server Express は、[コントロール パネル] > [管理ツール] > [サービス] > [SQL Server (SQLExpress)] で NETWORK SERVICE ユーザーを使用しています。
インストールされた「Live Demos」Web アプリケーション デモ プロジェクトで提供されるこの接続文字列を使用します。
<add name="NorthwindConnectionString"
connectionString="Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|Northwind.mdf;Integrated Security=True;User Instance=True"
providerName="System.Data.SqlClient" />
「User Instance=False」を設定しようとしましたが、別のエラーがスローされます。
データベース マスターで CREATE DATABASE 権限が拒否されました。ファイル の自動命名データベースを接続しようとしていますか? 失敗した。同じ名前のデータベースが存在するか、指定されたファイルを開くことができないか、ファイルが UNC 共有にあります。
(「?」は *.mdf ファイルのパス - C:\Users\\MyDocuments\Visual Studio 2008\Projects\TelerikDemos\Telerik\RadControls for ASP.NET AJAX Q2 2011\Live Demos\App_Data\Northwind.mdf .. スタック オーバーフローの斜体は、これらの文字の一部で壊れているため、そのパスを削除する必要がありました)
以前の質問で、この「User Instance=False」を設定するように誰かが私に答えましたが、ユーザー インスタンスは、SQL Express を使用するかどうかとは何の関係もないようです。ユーザー インスタンスは、非常に権限のないユーザーが独自のユーザー コンテキストでデータベース インスタンスをホストできるようにする SQL Express の単なる機能です。
この Northwind データベースは、App_Data フォルダー ("Live Demos" ルート アプリケーション ディレクトリの下) の *.mdf ファイルに、*.ldf (ログ ファイル) と共に格納されることに注意してください。以前、*.mdf ファイルを実際のデータベースとして (SSMSE オブジェクト エクスプローラー ツリーの) "Databases" フォルダーの下に添付しようとしましたが、後でそれらを削除しました。
Web アプリケーションの "Live Demos" ルート フォルダー (およびネストされたフォルダー/ファイル) には、次のユーザーにすべての権限が割り当てられて
い
ます
。ネットワークサービス
この SQLExpress マスター データベース クエリについて、自分用にメモしておきます。
SELECT * FROM sys.dm_os_child_instances
また、SQL Server (SQLExpress) Windows 7 サービス ([コントロール パネル] > [管理ツール] > [サービス]) でユーザーを変更しながら、*.mdf と *.ldf のアクセス許可のさまざまな組み合わせを試し、それらの変更を行った後にサービスを再起動しました。
再現するには:
ASP.NET AJAX 用の Telerik Rad Controls をダウンロードします。Program Files\Telerik の下の "Live Demos" フォルダーで前述の権限を設定し、Web アプリケーションの .NET バージョンを .NET 3.5 に変更し、3.5 の web.config ファイルをそのフォルダー内の通常の web.config ファイルに切り替えます。 . Visual Studio 2010 を使用する必要がありますが、私はこれを Visual Studio 2008 で実行しています (私たちの会社はまだ VS2010 を使用していないため、少し面倒な作業を行いました)。また、適切な Bin35 アセンブリを "Live Demos" フォルダーの Bin フォルダーに切り替えます。ソリューションをコンパイルします。IIS 7 Web サイトを作成します。Windows 認証を追加します。匿名認証と Windows 認証を有効にしました。他のすべては無効になっています。クラシックおよび 32 ビットを使用するようにアプリケーション プールを設定します。
次に、この URL に移動し、「First Look」の画像をクリックします。
http://localhost/combobox/examples/overview/defaultcs.aspx
====================
要求があれば、より多くの証拠が提供されます。