The contract specified by type '{0}' is ambiguous. The type derives from at least two different types that each define its ...

The contract specified by type '{0}' is ambiguous.  The type derives from at least two different types that each define its own service contract.  For this type to be used as a contract type, exactly one of its inherited contracts must be more derived than any of the others.