I tried using the config that you've provided. I have noticed when I try to open it using the ent lib config tool, your fault contract exception handler is not recognized as the normal faultcontract exception handler instead, it is recognized as if it is
a custom exception handler. Did you create the config by hand? or using the ent lib config tool. What you can try is to remove your fault contract exception handler then add a new one. I have created a working sample for this one, if you'll be interested,
send us a mail and we'll send you the sample solution.

The repro you sent to me uses the ExceptionShielding attribute which takes no parameter, you're just setting the ExceptionPolicyName property. You should do the same as what volcanodeng did,

[ExceptionShielding("WcfMembershipPolicy")]

This is necessary since this makes use of the constructor which, aside from setting the ExceptionPolicyName, it also sets the necessary IContractBehavior, IServiceBehavior, and IErrorHandler objects
to be used.

I even tried to do as you suggested : [ExceptionShielding("WcfMembershipPolicy")]

But it always gives me the following response:<faultcode>s:Server</faultcode><faultstring xml:lang="en-US">An error has occurred while consuming this service. Please contact your administrator for more information. Error ID: 96bf9c7a-dafb-4a58-a914-718314a3b33d</faultstring>

Were you able to make my code work on your end? If yes, I would highly appreciate if you could send me the updated files. I have exhausted all possible ways to fix it but somehow the exception policy is not getting hooked up.

The repro you sent to me uses the ExceptionShielding attribute which takes no parameter, you're just setting the ExceptionPolicyName property. You should do the same as what volcanodeng did,
[ExceptionShielding("WcfMembershipPolicy")]This is necessary since this makes use of the constructor which, aside from setting the ExceptionPolicyName, it also sets the necessary IContractBehavior, IServiceBehavior, and IErrorHandler objects to
be used.Sarah Urmeneta
Global Technologies and Solutions
Avanade, Inc.entlib.support@avanade.com

This bug still exists with EL 6. Is there a work item to fix it? Just to make clear: the behaviour should surely be the same when using the explicit form [ExceptionShielding(ExceptionPolicyName="X")] as when using [ExceptionShielding("X")].