Three basic layers: ASP.NET UI -> Business -> DAL
Business is deployed as WCF service while DAL is deployed in the same process as Business with a POSSIBILITY to be deployed separately.
EHAB says to use exception shielding between layers, that's fine but the solution EHAB provides via FaultContractExceptionHandler and ExceptionShieldingAttribute
is relevant within WCF physical deployment and not when u just have a separate layer like DAL that's in the same process.
[?? One possibility here is to ALWAYS deploy a layer under WCF umbrella using named pipes ??]
Want to use exception shielding between layers as prescribed to prevent info from escaping a layer: including Business and DAL and still being able to deploy DAL separately without changing exception handling code.
if DAL is deployed under a separate WCF then Business will be receiving soap faults and consequently will be looking for FaultException types in its policies.
if DAL is deployed "in-process" then Business will be receiving just regular exceptions [unless I use a ReplaceHandler to artificially take out the original exception and throw a new FaultException to simulate as if we are running within WCF even
though we are not]
I'm seeing those 2 solutions only: Named Pipes or artificial FaultException
Am I missing something here?