Có cách nào để bắt nhiều exception
cùng một lúc và không phải duplicate code trong C# không?
Có cách nào để bắt nhiều exception
cùng một lúc và không phải duplicate code trong C# không?
Trong C#, bạn có thể bắt nhiều exception
cùng một lúc mà không cần phải duplicate code bằng cách sử dụng cú pháp catch
nhiều lần sau một khối try
. Tuy nhiên, nếu logic xử lý cho các exception
này giống nhau, bạn có thể muốn tìm cách để không phải viết lại cùng một đoạn code. Một cách để làm điều này là sử dụng một khối catch
duy nhất và kiểm tra kiểu của exception
bằng cách sử dụng từ khóa when
trong C# 6 trở lên, hoặc sử dụng một phương thức xử lý chung cho tất cả các exception
mà bạn muốn bắt.
when
Từ C# 6 trở lên, bạn có thể sử dụng từ khóa when
để lọc các exception
dựa trên điều kiện cụ thể, cho phép bạn xử lý nhiều loại exception
khác nhau trong cùng một khối catch
mà không cần phải duplicate code.
try
{
// Code có thể phát sinh exception
}
catch (Exception ex) when (ex is IOException || ex is UnauthorizedAccessException)
{
...
middle
Gợi ý câu hỏi phỏng vấn
Chưa có bình luận nào