Как централизовать общий код в silverlight с классическим дизайном клиент / сервер? - PullRequest
1 голос
/ 08 июня 2010

Настройка:

У меня есть приложение silverlight, и веб-сервис хочет использовать один и тот же код.

Вот моя проблема:

  • Если сделать нормальную dll серебряного света Приложение сказать, что это не может ссылаться на это.
  • Если я сделаю Silverlight dll, Веб-сервис не может ссылаться на него.

Мне не нравится повторяющийся код, как я могу поделиться кодом между моим приложением Silverlight и моим веб-сервисом?

Ответы [ 2 ]

1 голос
/ 09 июня 2010

Существует несколько способов избежать дублирования.

Наиболее фундаментальным подходом было бы использование двух разных проектов, один из которых нацелен на .NET Framework, а другой на Silverlight. Таким образом, их ссылки указывают на соответствующий набор сборок, а проект Silverlight определяет символ условной компиляции #SILVERLIGHT. Однако они используют один и тот же набор файлов кода, то есть один будет использовать связанные файлы. Вы должны переключаться между частями, если нужно сделать иначе, используя условную компиляцию.

Службы RIA WCF также предлагают механизм, в котором вы помещаете код в файлы * .shared.cs в проекте на стороне сервера, который автоматически дублируется в папку «Generated_Code» в проекте на стороне клиента.

Существует способ обмениваться единым набором кода и одной выходной DLL между Silverlight 4 и .NET 4.0. Однако вам нужно будет ограничить ссылки на очень узкий набор файлов. См. Совместное использование сборок Silverlight с приложениями .NET

.
0 голосов
/ 08 июня 2010

Сделайте два проекта dll, один dll silverlight и один обычный dll. Пусть они оба ссылаются на третий проект с общим кодом, который создает статическую библиотеку. В любом случае хорошо иметь общий код в качестве статической библиотеки, так как вы можете связать его с любым проектом.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...