我创建了一个WCF服务,我的界面如下所示: -
[ServiceContract]
public interface IService1
{
[OperationContract(Action = "GetData")]
CompositeType GetDataUsingDataContract(CompositeType composite);
}
这里我使用的是Action名称,当我从这个服务生成WSDL时,我得到的操作名称如下:
但是当我使用通配符进行操作时,如下所示:
[ServiceContract]
public interface IService1
{
[OperationContract(Action = "*")]
CompositeType GetDataUsingDataContract(CompositeType composite);
}
在这里,我没有在我的WSDL中获取操作名称。
我的问题是如何通过在WSDL中生成操作名称来使用通配符。请帮我解决这个问题,或者给我一些实现这个的建议。
如果服务操作采用Message对象并返回Message对象或void,则只能使用[OperationContract(Action = "*")]
。
见the MSDN documentation for OperationContractAttribute.Action Property