ダム:以下に答えます。後世に役立つと思います。
これはよくあることだと思っていたので、これに関する情報を見つけることができましたが、これまで検索してもうまくいきませんでした。
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\Release
XAP と XAP の中に含まれているだけです。
バックグラウンド エージェントを持たない Caliburn を利用したアプリを誰もリリースしていないとは信じられません。どうすればこれを解決できますか? サポートされていない API コードを別のライブラリに分割することは理解できますが、エージェントから呼び出されるコードや Core
Caliburn API を呼び出すコードはありません。
参考までに、私のプロジェクト構造:
Core
^
|_______________BackgroundAgent
|_WP71___v________^ ^
| | |
|_WP80 __|___________________|
v
Caliburn
アスキーアートでごめんなさい。