0

ダム:以下に答えます。後世に役立つと思います。

これはよくあることだと思っていたので、これに関する情報を見つけることができましたが、これまで検索してもうまくいきませんでした。

Caliburn.Micro を使用する単純なプロジェクトがあります。私は、 Caliburn に依存しない共有コードを共有ライブラリ ( )に分割しましたCore。次に、バックグラウンド エージェントを作成し、コアのみを参照しました。また、フォアグラウンド プロジェクトでバックグラウンド エージェント プロジェクトを参照する必要があります。

私のフォアグラウンド プロジェクトだけが Caliburn に依存しています。

アプリがビルドされて実行され、エージェントが電話で実行されます。ただし、XAP 検証は失敗します。

[ERROR]: Unsupported API cannot be used by a background agent. Assembly Caliburn.Micro.dll was trying to use [whatever]

これで、私の共有ライブラリが Caliburn を呼び出していたかどうかはわかりましたが、依存関係はありません。Caliburn がbin\ReleaseXAP と XAP の中に含まれているだけです。

バックグラウンド エージェントを持たない Caliburn を利用したアプリを誰もリリースしていないとは信じられません。どうすればこれを解決できます? サポートされていない API コードを別のライブラリに分割することは理解できますが、エージェントから呼び出されるコード CoreCaliburn API を呼び出すコードはありません。

参考までに、私のプロジェクト構造:

Core
 ^
 |_______________BackgroundAgent    
 |_WP71___v________^          ^
 |        |                   |
 |_WP80 __|___________________|
          v
       Caliburn

アスキーアートでごめんなさい。

4

1 に答える 1

0

なんてこった、私はばかだ。

後世のために:

私のように十分な情報がなかったために、以前に BackgroundAgent で Caliburn を参照したことがある場合は、 CLEAN THE WHOLE SOLUTION . すべての bin ディレクトリを消去した後、XAP 検証に合格するようになりました。

うーん。

于 2013-02-27T02:49:15.110 に答える