WCF,这个错误.
WCF,这个异常........
“System.ServiceModel.CommunicationException”类型的未经处理的异常在 mscorlib.dll 中发生
其他信息: 尝试对参数 http://tempuri.org/ 进行序列化时出错: ListTouZhuResult。InnerException 消息是“不应为数据协定名称为“ArrayOfstring:http://schemas.microsoft.com/2003/10/Serialization/Arrays”的类型“System.Collections.Generic.List`1[[System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]]”。请考虑使用 DataContractResolver,或将任何未知类型以静态方式添加到已知类型的列表。例如,可以使用 KnownTypeAttribute 特性,或者将未知类型添加到传递给 DataContractSerializer 的已知类型列表。”。有关详细信息,请参见 InnerException。
该如何解决?对什么类型使用KnownType呢?试了下,没作用呢
------解决思路----------------------
人家提示中只是“随口一说”,你还当真啊?你问你什么不仔细看看提示中其它内容呢?已经把“什么类型不能转换为什么类型”说的很清楚了,你应该先理解一下,而不是捡无关的(但是是傻瓜式的)一个字眼儿盲目照抄。
理解,而不是抠字眼。
------解决思路----------------------
贴出你出问题的数据契约,看你有ArrayOfstring,然后又有List`1,明显两者不对应,一个是string数组,一个是泛型
------解决思路----------------------
出错之前修改过数据契约或操作契约吗?如果是的,删掉hosting跟client里面bin目录下的引用dll,然后重新生成整个解决方案后再测试。
------解决思路----------------------
你另一个帖子其实已经给了答案了。
------解决思路----------------------
你贴了操作契约,数据契约呢……
然后是哪个契约出错了
“System.ServiceModel.CommunicationException”类型的未经处理的异常在 mscorlib.dll 中发生
其他信息: 尝试对参数 http://tempuri.org/ 进行序列化时出错: ListTouZhuResult。InnerException 消息是“不应为数据协定名称为“ArrayOfstring:http://schemas.microsoft.com/2003/10/Serialization/Arrays”的类型“System.Collections.Generic.List`1[[System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]]”。请考虑使用 DataContractResolver,或将任何未知类型以静态方式添加到已知类型的列表。例如,可以使用 KnownTypeAttribute 特性,或者将未知类型添加到传递给 DataContractSerializer 的已知类型列表。”。有关详细信息,请参见 InnerException。
该如何解决?对什么类型使用KnownType呢?试了下,没作用呢
------解决思路----------------------
人家提示中只是“随口一说”,你还当真啊?你问你什么不仔细看看提示中其它内容呢?已经把“什么类型不能转换为什么类型”说的很清楚了,你应该先理解一下,而不是捡无关的(但是是傻瓜式的)一个字眼儿盲目照抄。
理解,而不是抠字眼。
------解决思路----------------------
贴出你出问题的数据契约,看你有ArrayOfstring,然后又有List`1,明显两者不对应,一个是string数组,一个是泛型
------解决思路----------------------
出错之前修改过数据契约或操作契约吗?如果是的,删掉hosting跟client里面bin目录下的引用dll,然后重新生成整个解决方案后再测试。
------解决思路----------------------
你另一个帖子其实已经给了答案了。
------解决思路----------------------
你贴了操作契约,数据契约呢……
然后是哪个契约出错了