Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
679 views
in Technique[技术] by (71.8m points)

domain driven design - .Net Core Web API Handling exception in different layers

I'm working on a .Net Core 3.1 Web API with different classic layers (DDD).
We've implmented a global exception handler to catch all the exceptions and send back friendly messages to client.

In my team, we've got different points of view on exception management. One of us is more abouit only using the global exception middleware. On my side, I think we should first catch errors on methods and throw the error. What is the good way to go ?

question from:https://stackoverflow.com/questions/65833011/net-core-web-api-handling-exception-in-different-layers

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Answer

0 votes
by (71.8m points)

Both ways can be combined.

The exception middleware covers cases where an exception is thrown by some inner component but never gets catch, hence freeing us from the need to use try/catch blocks.

On the other hand, in some cases you want to use try/catch block, e.g. when you want to implement a retry logic for specific error (of course, if retry also fails you rethrow the exception, letting the middleware handle it).


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...