2010-11-19 2 views
6

Der folgende Vertrag erzeugt keine Operation in den Metadaten. Wenn ich die Antwortaktion entferne oder auf "" setze, wird die Operation jetzt korrekt generiert. Warum?WCF ReplyAction = "*" bricht die Metadaten

[System.ServiceModel.ServiceContractAttribute(Namespace="http://Test/Publish", ConfigurationName="IFCRPublish")] 
public interface IFCRPublish 
{ 

    // CODEGEN: Generating message contract since the operation PublishNotification is neither RPC nor document wrapped. 
    [System.ServiceModel.OperationContractAttribute(Action="http://Test/PublishNotification", ReplyAction="*")] 
    PublishNotificationResponse1 PublishNotification(PublishNotificationRequest1 request); 
} 

Der Full-Service-Code ist in WCF metadata missing operations, wenn es erforderlich ist.

Antwort

5

Einstellung ReplyAction = "*" für einen OperationContract bedeutet, dass der WsdlExporter (der die Metadaten veröffentlicht) diesen Vorgang ignoriert. Wenn Sie einen anderen Wert einstellen, wird dies behoben.

+3

Sie könnten auch nur das Attribut vollständig entfernen und das sollte noch funktionieren. –