ホストをMVC3にアップグレードしましたが、SQLCE 4.0を使用して「HelloWorld」を実行しようとしていますが、次のようになりました。
リクエストの処理中に申し訳ありませんが、エラーが発生しました。
レイアウトとすべてが表示されますが、データの代わりに表示されます。
ローカルホストで期待どおりに機能しています
私は持っています:
<add name="PruebaContext" connectionString="Data Source=|DataDirectory|db.sdf" providerName="System.Data.SqlServerCE.4.0"/>
connectionStringとして。
プロジェクトの一部としてsdfを配置し、ローカルコピーをtrueにしてSystem.Data.SqlServerCE.dllをプロジェクトに追加しました。
これ以上のアイデアはありません。connString、dllは/ binにあり、ローカルホストで機能しています。
何か案は?
ありがとう。
編集
私は今いくつかのログを持っています:
/ binに「System.Data.SqlServerCE.dll」がない場合:
要求された.NetFrameworkデータプロバイダーが見つかりません。インストールされていない可能性があります。
System.ArgumentException:要求された.NetFrameworkデータプロバイダーが見つかりません。インストールされていない可能性があります。
十分に元気です。SqlServerCE4はありません。
ローカルコピーのDLL、別名/ bin:
バージョン8482のADO.NETプロバイダーに対応するSQLServerCompactのネイティブコンポーネントを読み込めません。正しいバージョンのSQLServerCompactをインストールしてください。詳細については、KB記事974247を参照してください。
例外の詳細:System.Data.SqlServerCe.SqlCeException:バージョン8482のADO.NETプロバイダーに対応するSQLServerCompactのネイティブコンポーネントを読み込めません。正しいバージョンのSQLServerCompactをインストールしてください。詳細については、KB記事974247を参照してください。
KBには、x86とamd64のdllが必要だと書かれています。/ bin/x86と/bin/amd64のように2つのディレクトリを/binにコピーすると、どこかで読んだことがあります。そのフォルダをSqlServerCE4インストールフォルダのプライベートフォルダからコピーしました。今私は得た:
ADO.NETプロバイダーとSQLServerCompactのネイティブバイナリの間でファイルバージョンの不一致が検出され、機能が正しくなくなる可能性があります。これは、異なるバージョンのSQL Server Compactの複数のインスタンスが存在するか、SQLServerCompactバイナリと同じ名前のバイナリが間違っていることが原因である可能性があります。一致するバージョンのSQLServerCompactバイナリをインストールしてください。
Ok。SQLServerCE4のルートフォルダーにもいくつかのdllがあるので、その2つのフォルダーを削除し、そのdllを/binにコピーしました。
ファイルまたはアセンブリ'file:/// C:\ HostingSpaces \ jesusrod \ foxandxss.net \ wwwroot \ mvc3 \ bin\sqlceca40.dll'またはその依存関係の1つを読み込めませんでした。モジュールには、アセンブリマニフェストが含まれていることが期待されていました。
いろいろやってみたと思います。Scottguは、SqlServerCE 4は、インストールしなくてもどのサーバーでも機能するはずだと述べました。