Estoy utilizando algunas clases genéricas como contenedores de datos, y los estoy usando para pasar datos hacia y desde un servicio wcf. Debido a la forma en que WCF manipula los nombres genéricos del lado del cliente en una clase llamada algo así como "ListOfBlah231546797646", agrego una referencia al ensamblaje real como un "Tipo Conocido".Compartiendo ensambles entre Silverlight y "plain vanilla" .Net
Silverlight necesita consumir estos servicios, pero solo puede hacer referencia a "conjuntos Silverlight". He movido las clases a su propio "ensamblaje Silverlight" y puedo hacer referencia a ellas desde Silverlight, pero cuando se ejecuta el servicio aparece el error "no se puede encontrar el ensamblaje al que se hace referencia" en el ensamblado System.Runtime.Serialization.
Resulta que Silverlight tiene su propio conjunto de binarios, todos etiquetados con la versión 2.0.5.0. Estos no están en el GAC del servicio y, por lo tanto, se lanza la excepción.
Debido a esto, no puedo hacer referencia a mi "Ensamblaje de Silverlight" desde el código de mi servicio. ¿Hay alguna forma de evitar este problema, haciendo que los dos sabores se vuelvan compatibles cuando se serialicen?
Esta pregunta es similar, pero ninguna de las respuestas ayuda. ¿Algunas ideas? similar question
Esto funciona, sin embargo, WCF no puede reconocer la clase genérica, y el atributo KnownType no funcionará. He encontrado una forma diferente de resolver el problema, pero tu respuesta fue muy inteligente y funcionará para las personas que quieran compartir código que no esté tan entrelazado con WCF. –