Я использую структуру MvvmCross для создания проекта Windows Phone 8. В моем WP8 проекта в XAML я следующее:Я получаю ошибки сборки при использовании MvxEventToCommand в проекте 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, Ve rsion = 3.8.5.0, Culture = neutral, PublicKeyToken = 31bf3856ad364e35 ', потому что он не был предварительно загружен. При использовании API ReflectionOnly зависимые сборки должны быть предварительно загружены или загружены по требованию через событие ReflectionOnlyAssemblyResolve.
Глядя на ILSpy, я вижу, что Cirrious.MvvmCross.WindowsPhone.dll ссылается на эту DLL, но у меня только версия 3.9.5.0 доступна в моем списке ссылок на сборку в моем проекте.
Я попытался добавить перенаправление сборки в свой app.config, но я думаю, что это больше для разрешения времени выполнения, а затем для ошибок сборки.
Каков наилучший способ решить эту проблему?
Благодаря
- EDIT -
мне удалось решить эту проблему, найдя вариант WP7.1 в System.WindowsInteractive.dll, которая является версия 3.8.5.0. Мой проект определенно ориентирован на ОС Windows 8.0.
Это может быть проблема с упаковкой Nuget MVVMCross?
Вдали от дома. Не удается ответить правильно. Я знаю, что eventtocommand полагается на интерактивность из blend - но обычно MS sdk устанавливает это ... Попробует проверить больше на следующей неделе. – Stuart
Спасибо. У меня есть работа с этой старой версией, но было бы неплохо использовать обновленную версию. SDK действительно установил System.Windows.Interactive, похоже, версия 3.9.5.0. –
В структуре mvvmcross используются проекты, ориентированные на wp7.1, есть один проект, который является ссылкой на system.windows.interactivity. Если ваш основной проект нацелен на wp8, может быть, есть конфликт где-то ... У меня была эта же проблема, некоторое время назад, но я напрямую использую проекты mvvmcross, поэтому я только что преобразовал проекты WP7.1 в WP8. Это не лучший подход, но для меня это сработало. Возможно, я изменю это в ближайшем будущем. – zleao