MvvmCross フレームワークを使用して Windows Phone 8 プロジェクトを作成しています。xaml 内の私の WP8 プロジェクトには、次のものがあります。
<i:Interaction.Triggers >
<i:EventTrigger EventName="Tap">
<Commands:MvxEventToCommand Command="{Binding OnItemTappedCommand}" />
</i:EventTrigger >
</i:Interaction.Triggers>
私の名前空間は次のとおりです。
xmlns:i="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity"
と
xmlns:Commands="clr-namespace:Cirrious.MvvmCross.WindowsPhone.Commands;assembly=Cirrious.MvvmCross.WindowsPhone"
ビルドしようとすると、次のエラーが表示されます。
プリロードされていないため、アセンブリ 'System.Windows.Interactivity, Version=3.8.5.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' への依存関係を解決できません。ReflectionOnly API を使用する場合、依存アセンブリは、ReflectionOnlyAssemblyResolve イベントを通じて事前に読み込まれるか、必要に応じて読み込まれる必要があります。
ILSpy を見ると、Cirrios.MvvmCross.WindowsPhone.dll がこの dll を参照していることがわかりますが、プロジェクト内のアセンブリ参照リストにはバージョン 3.9.5.0 しかありません。
app.config にアセンブリ リダイレクトを追加しようとしましたが、それはビルド エラーよりも実行時の解決のためだと思います。
この問題を解決する最善の方法は何ですか?
ありがとう
- 編集 -
バージョン 3.8.5.0 の System.WindowsInteractive.dll の WP7.1 バージョンを見つけることで、この問題を解決することができました。私のプロジェクトは間違いなく Windows 8.0 phone OS をターゲットにしています。
これは、MVVMCross の Nuget パッケージの問題でしょうか?