У меня есть библиотека классов Silverlight, которая используется как приложением Silverlight, так и с обычной службой WCF C#.Использование различных версий DLL в одном приложении
Приложение Silverlight вызывает службу WCF для чтения/записи некоторых данных. Они используют общую библиотеку для управления передаваемыми данными.
Все компилируется нормально, но когда мы запустим приложение, то вебсервис выдает следующее сообщение об ошибке, когда вызов SilverLight библиотеки производится:
«Не удалось загрузить файл или сборку«System.Xml, Version = 2.0 .5.0, Culture = neutral, PublicKeyToken = 7cec85d7bea7798e 'или одна из его зависимостей. Система не может найти указанный файл. "
Это потому, что библиотека классов silverlight ссылается на v2.0.5 System.Xml, но служба WCF ссылается на v3.5 System.Xml.
Есть ли способ, которым я могу ссылаться на обе версии и не получить ошибку?
Это не имеет большого смысла. WCF работает с другим механизмом выполнения, чем Silverlight. –
Кроме того, Silverlight работает на клиенте и WCF на сервере. Я бы предположил, что эта ошибка относится к части сервера WCF и поэтому не связана с Silverlight, если только ваш контракт на обслуживание не сохраняет строго типизированное значение или набор значений, которые нельзя воссоздать в WCF. В таких случаях вы должны изменить свой контракт, чтобы содержать типы, поддерживаемые надлежащим образом с обеих сторон службы. –