0

私は他の誰かによって作成されたサイトを提供されており、現在それをテストしようとしています。問題なくシステムをコンパイルできますが、Web サイトにログインしようとすると、次のエラーが表示されます。

"EntityException occured. A first chance exception of type 'System.Data.EntityException' occured in System.Data.Entity.dll. Additional info: The underlying provider failed on Open."

さらに、さらに深く掘り下げると、次の InnerException が表示されます。Cannot open database \"MyDB\" requested by the login. The login failed. Login failed for user 'name\\owner'.

Web で同様の問題を読んだことがありますが、データベース接続に問題があるようです。connectionStringをいじることを含む複数の「解決策」を試しましたが、何も機能しません。

システムがやりたいと思うのは、別のプロジェクトの App_Data にある .mdf に接続することです。とにかく、最初に受け取ったconnectionStringコードは次のとおりです。

add name="NameServiceContext"
connectionString="Server=tcp:qiu5vg5yhv.database.windows.net,1433;Database=MyDB;User ID=MYID;Password=MYPASS;Trusted_Connection=False;Encrypt=True;Connection Timeout=30;"
providerName="System.Data.SqlClient"

簡単な質問ですが、tcp:...... とは何ですか? 何らかの形で生成されたと思いますが、どのように?

問題を「修正」しようとしましたが、最終的には次のようになりました。

add name="NameServiceContext" 
connectionString="data source=./SQLEXPRESS;AttachDbFilename=C:\Users\owner\Documents\MyERP\App_Data\MyDB.mdf;Integrated Security=True;Connect Timeout=30;" 
providerName="System.Data.SqlClient"

どちらの方法でも同じエラーが発生し、アイデアがありません。これを修正するにはどうすればよいですか?

また、ツール>データベースへの接続> MS SQL dbファイルを介してデータベースに接続すると、2つのデータソースの間のオプションが表示され./SQLEXPRESSます(LocalDB)\v11.0. 両方を含める必要がありますか? もしそうなら、どのように?

4

3 に答える 3

0

元の接続文字列は、Microsoft Azure インスタンスを参照しています。Azure への一般的な接続文字列は次のようになります。

Server=tcp:[serverName].database.windows.net;Database=myDataBase;User ID=[LoginForDb]@[serverName];Password=myPassword;Trusted_Connection=False;Encrypt=True;

サーバー名はqiu5vg5yhv.database.windows.netです。ほとんどの場合、資格情報が正しくありません。

于 2013-11-26T04:16:21.673 に答える
-1

私は同じ質問に会いました。重要なステップはここにあります。vs 2013 update 4 を使用しました。Azure で SQL を構成すると、接続文字列が生成されました。

ここに画像の説明を入力

于 2016-03-02T03:33:11.870 に答える