我正在尝试使用SHA1加密许多第三方类对象。这些类对象正在从服务引用中消耗,并且不受我管理。虽然我可以查看和查看服务参考中的代码,但我无法更改代码。序列化SHA1加密对象时出现DataContractSerializer错误
一个需求是在通过SOAP发送它们之前计算这些类对象的SHA1哈希值。为此,我正在使用在http://alexmg.com/compute-any-hash-for-any-object-in-c/处找到的对象扩展。
但是,当我尝试使用computerHash<T>
方法中的DataContractSerializer
序列化其中一个类时,我收到以下错误。然而,我可以使用XmlSerializer
将这个相同的类序列化为一个XML文档,而不会有任何问题。
类型'[namespace]。[class]。[method]'与数据契约名'[方法]:http://schemas.datacontract.org/2004/07/[namespace].[class]'不是预期的。考虑使用DataContractResolver或将任何不知道的类型静态添加到已知类型列表中 - 例如,通过使用KnownTypeAttribute属性或将它们添加到传递给DataContractSerializer的已知类型列表中。
任何有关使此工作的指导将非常感激。