Invalid contract attribute for IMetadataExchange

wcf

Solution

Can you delete .SUO (solution Users Option file) file after closing VS? This will reset the cache for XMLEditor component in VS and will fix your problem.

Problem

I have upgraded a WCF Service to .NET Framework 4.5. After doing so I noticed a blue squiggly line around the `IMetaDataExchange` in the host config file. This is what the services section of the config looks like: ``` <services> <service behaviorConfiguration="MyBehavior" name="MyServiceHost"> <endpoint binding="wsHttpBinding" bindingConfiguration="noSecurityBinding" contract="MyServiceContract"/> <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange"/> </service> ``` When I hover the mouse over `IMetadataExchange` the error says: The 'contract' attribute is invalid - The value 'IMetadataExchange' is invalid according to its datatype 'serviceContractType' - The Enumeration constraint failed. The service seems to work fine. So I am curious why is this invalid.

Original source