1

私はwpfアプリケーション(EF、ドットネット4、wix3.6)を書いています。正常にコンパイルされます。アプリをデバッグでき、すべてが機能します。生成された実行可能ファイルを実行でき、すべてが機能します。実行可能ファイルを適切な場所にコピーする.msiファイルを正常に生成するWixでパッケージ化しようとしています。msi-deployed .exeを実行すると、上記のエラーが発生します。

ここで質問を確認しました:指定された名前付き接続が構成に見つからないか、EntityClientプロバイダーでの使用を目的としていないか、無効です。ここで:指定された名前付き接続が構成に見つかりません。 EntityClientプロバイダーでの使用を意図していないか、無効です。2番目のリンクはweb.configを扱っているため、解決策ではありません。私はWindowsデスクトップ環境にいます。

最初のソリューションでは、複数のプロジェクトと、他のプロジェクトでの複製が必要なEFプロジェクトの構成について説明します。私の場合、2つのプロジェクトはメインアプリケーション(EFのものを含む)とWixインストーラープロジェクトだけです。

いずれにせよ、私はWixプロジェクトにコピーしApp.configましたが、それは何の違いもありませんでした。私はwixのものを動かすのに多くの問題を抱えていました、しかし私はそれが今だと思います、しかしそれは解決策へのポインターかもしれません。

誰か助けてもらえますか?

4

1 に答える 1

2

OK、Gert Arnoldが正しく指摘したように、構成ファイルがアプリケーションディレクトリにコピーされていなかったため、接続文字列が見つかりませんでした。作成された構成ファイルはMyAppName.exe.configという名前で、VSおよびその他のビット(EF構成の詳細など)で作成されたApp.configファイルからのものが含まれています。

(.msi展開にはこれまで.configファイルが含まれていなかったため、VS2010インストーラーとWixインストーラーの設定が異なる必要があります。)

いずれにせよ、メインアプリケーション機能に含まれるコンポーネントとして.exe.configファイルをProduct.wxsファイルに追加すると、問題が解決しました。

Newbノート:

  • コンポーネントタグをコピーして貼り付ける場合は、KeyPath="no"を設定することを忘れないでください。

  • デプロイされるファイルへのパスは、.wxsファイルの場所を基準にしています。

于 2012-12-07T11:37:51.297 に答える