Лучший способ поделиться кодом между WPF и Silverlight

StackOverflow https://stackoverflow.com/questions/4621197

Вопрос

У меня есть решение, содержащее как Silverlight 4, так и для решения WPF 4. Одна веб-версия приложения и одна версия на рабочем столе.

Оба проекта имеют аналогичные классы домена и интерфейсы и оба доступа к облаку для хранения и других материалов.

Я хотел создать общие интерфейсы и проект классов, поэтому я создал классную библиотеку, но вы не знаете его, Silverlight не может добавить ссылку на классную библиотеку. Поэтому я создал общий проект в качестве библиотеки класса Silverlight, но когда я ссылаюсь на то, что из проекта WPF я получаю предупреждения:

Warning The project 'Interface.Common.Silverlight' cannot be referenced. The referenced project is targeted to a different framework family (Silverlight)

И я даже получаю ошибки выполнения загрузки класса, когда я использую любой класс из этой библиотеки, потому что «System.Windows нельзя найти во время выполнения»

Я хочу поделиться кодом между двумя проектами, как это может быть достигнуто чистым способом?

Спасибо за любую помощь, вы можете дать

Это было полезно?

Решение

Создайте два параллельных проекта один для WPF и один для SilverLigth. Для одного из проектов добавьте файлы в виде ссылок вместо файлов.

Я сделал это успешно для Microsoft Silverlight Analytics Framework С одной кодойной базой для Silverlight 4, WPF и Windows Phone 7.

Другие советы

Как насчет CHAML Code Code с Silverlight и WPF

Создать "Портативный«Проект. Это может быть указано как от WPF, так и Silverlight

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top