WCF抛出异常

时间:2011-02-14 12:22:30

标签: wcf

 <s:Body>
<s:Fault>
  <s:Code>
    <s:Value>s:Sender</s:Value>
    <s:Subcode>
      <s:Value xmlns:a="http://schemas.microsoft.com/net/2005/12/windowscommunicationfoundation/dispatcher">a:DeserializationFailed</s:Value>
    </s:Subcode>
  </s:Code>
  <s:Reason>
    <s:Text xml:lang="en-US">The formatter threw an exception while trying to deserialize the message: There was an error while trying to deserialize parameter http://tempuri.org/:dataSet. The InnerException message was 'There was an error deserializing the object of type System.Data.DataSet. '��&lt;http://tempuri.org/ISplSynchronizationContracts/ApplyChangesD&#x1A;' contains invalid UTF8 bytes.'.  Please see InnerException for more details.</s:Text>
  </s:Reason>
  <s:Detail>
    <ExceptionDetail xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/System.ServiceModel">
      <HelpLink i:nil="true" />
      <InnerException>
        <HelpLink i:nil="true" />
        <InnerException>
          <HelpLink i:nil="true" />
          <InnerException>
            <HelpLink i:nil="true" />
            <InnerException i:nil="true" />
            <Message>Unable to translate bytes [82] at index 0 from specified code page to Unicode.</Message>
            <StackTrace>   at System.Text.DecoderExceptionFallbackBuffer.Throw(Byte[] bytesUnknown, Int32 index)
   at System.Text.DecoderExceptionFallbackBuffer.Fallback(Byte[] bytesUnknown, Int32 index)
   at System.Text.DecoderFallbackBuffer.InternalFallback(Byte[] bytes, Byte* pBytes, Char*&amp; chars)

我在WCF中使用自定义绑定,有时会出现上述错误。有人可以帮帮我吗?

1 个答案:

答案 0 :(得分:0)

该例外包含文字:contains invalid UTF8 bytes

很难根据有限的上下文进行验证,但我会假设在某个地方,您将序列化为UTF-16或其他格式,并且服务失败了。

确保使用UTF-8显式序列化所有序列化的对象。