Bug 55884 - MetadataExchangeClient fails to process faults for Google AdWords web services
Summary: MetadataExchangeClient fails to process faults for Google AdWords web services
Status: NEW
Alias: None
Product: Class Libraries
Classification: Mono
Component: WCF assemblies (show other bugs)
Version: 5.0 (2017-02)
Hardware: Macintosh Mac OS
: --- normal
Target Milestone: Untriaged
Assignee: Bugzilla
Depends on:
Reported: 2017-05-02 11:38 UTC by Alexey Skalozub
Modified: 2017-09-06 16:55 UTC (History)
1 user (show)

See Also:
Is this bug a regression?: ---
Last known good build:


Description Alexey Skalozub 2017-05-02 11:38:29 UTC
When processing metadata for Google AdWords web services, it fails with error:

System.InvalidOperationException: Metadata contains a reference that cannot be resolved : https://adwords.google.com/api/adwords/cm/v201607/AdGroupAdService?wsdl ---> System.ServiceModel.CommunicationException: Received an invalid SOAP Fault message ---> System.Xml.XmlException: Reason is missing in the Fault message
  at System.ServiceModel.Channels.MessageFault.CreateFault12 (System.ServiceModel.Channels.Message message, System.Int32 maxBufferSize) [0x0014e] in <727ba4b068ab428bafcc805884918f1b>:0 
  at System.ServiceModel.Channels.MessageFault.CreateFault (System.ServiceModel.Channels.Message message, System.Int32 maxBufferSize) [0x0001c] in <727ba4b068ab428bafcc805884918f1b>:0 

Minimal code to reproduce issue:

  using System;
  using System.ServiceModel;
  using System.ServiceModel.Description;

  class Untitled
    static void Main(string[] args)
      var metadataBinding = new BasicHttpsBinding()
        MaxReceivedMessageSize = int.MaxValue,
        TransferMode = TransferMode.Streamed
      var metadataClient = new MetadataExchangeClient(metadataBinding);
      metadataClient.GetMetadata(new Uri("https://adwords.google.com/api/adwords/cm/v201607/AdGroupAdService?wsdl"), MetadataExchangeClientMode.HttpGet);

The code above works on Windows/.NET framework, but fails on Mono.

Note You need to log in before you can comment on or make changes to this bug.