Разработка логики приложения для WP7 без эмулятора - PullRequest
0 голосов
/ 10 ноября 2011

Я работаю в стесненных условиях (win7 под VirtualBox), и все работает отлично, кроме эмулятора (отладка на реальном телефоне в порядке). Но я новичок в Visual Studio и .NET и хотел бы разработать всю логику (по крайней мере, взаимодействие с сетью, алгоритмами, моделями данных) в отдельной библиотеке (для проверки ее на простом консольном или WPF-приложении).

Но тут возникают проблемы - библиотека WP7 использует специальное решение (и все проекты по умолчанию построены на .NET Framework 4, когда телефон работает с .NET CF 3.7, почему?). Как мне настроить IDE, чтобы построить кроссплатформенную (я имею в виду настольный компьютер / Windows Phone 7) библиотеку?

Ответы [ 3 ]

2 голосов
/ 10 ноября 2011

Вы можете создавать параллельные проекты (один для рабочего стола, один для телефона), добавлять файлы c # в один из них и связывать их в другом проекте.

Чтобы добавить ссылку на файл вместо копирования, выполните следующие действия: Щелкните правой кнопкой мыши проект => добавить существующий элемент -> Выберите файл -> щелкните стрелку раскрывающегося списка рядом с кнопкой «Добавить»и выберите «Добавить как ссылку».

Чтобы устранить любую несовместимость, вы можете определить условный символ компиляции, такой как PHONE, и обернуть свой несовместимый код в:

#if PHONE
 //phone code
#else
 //desktop code
#endif

Недостаток - после добавленияновый файл кода в проекте, вам нужно связать его с проектом corespondent другой платформы.

Я не думаю, что есть более простой способ сделать это.

0 голосов
/ 11 ноября 2011

Мой знакомый предложил использовать Portable Library Tools , что позволяет создавать переносную библиотеку для нескольких целевых платформ (xbox, winphone7, silverlight и т. Д.) Без перекомпиляции. Выглядит очень многообещающе.

0 голосов
/ 10 ноября 2011

Вы можете использовать шаблон MVVM для разработки ваших моделей представления (бизнес-логики) в одной сборке, затем, когда вы будете готовы к пользовательскому интерфейсу, вы можете создать проект WP7 и создать представления внутри этого проекта, ссылаясь на модели представлений впервый проект.

Это позволит вам сначала выполнить модульное тестирование и разработать всю свою логику, а затем просто создать представления и привязать к соответствующим свойствам в соответствующих моделях представления.

MVVM был разработан дляуметь развиваться так, чтобы это работало действительно хорошо ИМХО.

...