2013-09-22 6 views
6

私はAzure WebサイトにASP.NET Webアプリケーションをデプロイしています。 EFのAzure Webサイトの接続文字列が取得されない

サイト

は、Entity Frameworkのを使用しています、と私は Web.configに次のものが含まれたときにそれが正常に実行されます。この接続文字列が削除され、代わりに、Azureの管理ポータルを介して指定されている場合

<connectionStrings> 
    <add name="DataContext" connectionString="metadata=res://*/Models.WpsData.csdl|res://*/Models.WpsData.ssdl|res://*/Models.WpsData.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=XXXX;initial catalog=XXXX;persist security info=True;user id=XXXX;password=XXXX;multipleactiveresultsets=True;application name=EntityFramework&quot;" providerName="System.Data.EntityClient" /> 
</connectionStrings> 

しかし、エラーが発生しました。

Name: DataContext 
Value: metadata=res://*/Models.WpsData.csdl|res://*/Models.WpsData.ssdl|res://*/Models.WpsData.msl;provider=System.Data.SqlClient;provider connection string="data source=XXXX;initial catalog=XXXX;persist security info=True;user id=XXXX;password=XXXX;multipleactiveresultsets=True;application name=EntityFramework" 
Type: Custom 

これはエラーになります。「のDataContext」という名前んが、接続文字列は、アプリケーションの設定ファイルに見つかりませんでした。

答えて

8

類似の質問hereを参照してください。

web.configに接続文字列を何らかの値(テスト接続文字列かダミー値のどちらか)で残してみてください。

<connectionStrings> 
    <add name="DataContext" connectionString="dummy" providerName="System.Data.EntityClient" /> 
</connectionStrings> 
+2

ありがとうございました!それはダミー値(空ではない)でなければなりません。 – James

+1

ありがとう、私はダミーを追加する答えを編集しました。 –

+0

元の接続文字列ではなく、web.configファイルでダミー値にする必要があるのはなぜですか?なぜあなたはその場所に元の値を残して、サイトをローカルで実行してデバッグを続けることができないのですか?キーワード「ダミー」について魔法がありますか? –

関連する問題