J'essaie de spécifier un type connu dans ma config, mais j'ai des problèmes avec le fait qu'il dérive d'Object. Je peux le faire fonctionner en spécifiant le type connu via l'attribut. Mais dans ce cas, je dois le faire fonctionner à partir de la config.Type WCF connu de System.Object dans Config
Voici un exemple. Les travaux suivants fins:
[ServiceContract]
[ServiceKnownType(typeof(MyData))]
public interface IContract
{
[OperationContract]
void Send(object data);
}
[DataContract]
public class MyData
{
[DataMember]
public string Message { get; set; }
}
Mais si je supprime l'attribut ServiceKnownType et mettre ce qui suit dans la config:
<system.runtime.serialization>
<dataContractSerializer>
<declaredTypes>
<add type="System.Object, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<knownType type="WpfApplication1.MyData, WpfApplication1, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null"/>
</add>
</declaredTypes>
</dataContractSerializer>
</system.runtime.serialization>
je reçois un ConfigurationErrorsException avec le message « La valeur de la propriété « type » n'est pas valide L'erreur est: Le type System.Object ne peut pas être utilisé comme un type déclaré dans config. "
Est-il possible de faire ce travail via la configuration?