2

最初にEF 4.3コードを使用しています。EF Code の最初のアプリケーションを開発し、私の開発ボックスで CRUD 操作を非常にうまく行っています。コードをWCFサービステストサーバーに移動した後、実際の問題が始まりました。取得しているレコードを挿入しようとしているときに

「データベースからプロバイダー情報を取得中にエラーが発生しました。これは、不適切な接続文字列を使用する Entity Framework が原因である可能性があります。詳細については内部例外を確認し、接続文字列が正しいことを確認してください」

Web サーバーの同じコードはうまく機能しており、別の開発者 (今は会社を辞めました) によって行われました。WCF TEST サーバーに展開する前に、IIS またはアプリケーション構成で行う必要がある追加の構成設定はありますか。何かをインストールしたり、GACで検証したりする必要があるということですか?

WCF サーバー: Windows Server 2008 R2

EF バージョン: EF 4.3 Code First 。データベースは、WCF テスト サーバーへのデプロイ前に存在します

構成ファイル:

<connectionStrings>
<add name="MyApplicationDbContext" providerName="System.Data.SqlServerCe.4.0"    connectionString="Server=jmicsq10webdev\web_dev;Database=PlEcom;Integrated Security=SSPI;" />
</connectionStrings>

<configSections>   
<section name="entityFramework"   type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=4.3.1.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
</configSections>

ProverderName = "system.Data.SqlClient.dll" でも試しましたが、問題は解決しませんでした

4

3 に答える 3

2

同じエラーが発生したので、行って変更しました

AttachDBFilename=|DataDirectory|\aspnet.mdf" 
providerName="System.Data.SqlServerCe.4.0"/>

この行に

AttachDBFilename=|DataDirectory|\aspnet-MvcHopitalPatient-20121116125855.mdf"
providerName="System.Data.SqlClient" />

以下のコード スニペットに

 <connectionStrings>
   <add name="PatientDBContext"
        connectionString="Data Source=|DataDirectory|Patients.sdf"
        providerName="System.Data.SqlServerCe.4.0"/>

    <add name="DefaultConnection" 
        connectionString="Data Source=(LocalDb)\v11.0;
        Initial Catalog=aspnet-MvcHopitalPatient-20121116125855;
        Integrated Security=SSPI;
        AttachDBFilename=|DataDirectory|\aspnet-MvcHopitalPatient-20121116125855.mdf"
        providerName="System.Data.SqlClient" />

 </connectionStrings>
于 2012-11-17T10:30:38.267 に答える
0

Compact Edition の代わりに通常の SqlClient を使用してみてください。

<connectionStrings>
<add name="MyApplicationDbContext" providerName="System.Data.SqlClient"    connectionString="Server=jmicsq10webdev\web_dev;Database=PlEcom;Integrated Security=SSPI;" />
</connectionStrings>
于 2012-06-13T16:23:11.890 に答える
0

コントロール パネルから SQL Server サービスを開始する必要があります。時々、サービスが停止します。私も同じ問題を抱えていました。理由は、Sql サービスが実行されていなかったためです。サービスを開始すると問題が修正されました

于 2013-11-12T06:15:46.133 に答える