我想验证soap自定义标头中的值以查看它们是否有效。我将针对外部服务验证它。 如果验证失败,我希望能够发回肥皂故障。 有人对如何做到这一点有任何建议吗? 我尝试通过实现IOperationInvoker但是当我在preinvoke中抛出异常时没有响应回来。
答案 0 :(得分:1)
您可以使用Message Inspector。
示例 - 关于您使用AfterReceiveRequest的服务:
object IDispatchMessageInspector.AfterReceiveRequest(ref System.ServiceModel.Channels.Message request, System.ServiceModel.IClientChannel channel, System.ServiceModel.InstanceContext instanceContext)
{
// Retrieve Inbound Object from Request
var header = request.Headers.GetHeader("XXXXX", "X");
// evaluate header and throw FaultException if necessary
return null;
}