Tôi đã chỉ duyệt và đã xem qua câu hỏi này:xử lý tổ chức sự kiện hội nghị phương pháp nâng
The answer from nobug bao gồm mã này:
protected virtual void OnLeave(EmployeeEventArgs e) {
var handler = Leave;
if (handler != null)
handler(this, e);
}
Resharper cũng tạo ra mã tương tự như khi sử dụng "tạo nâng cao phương pháp "sửa lỗi nhanh.
Câu hỏi của tôi là, tại sao là dòng này cần thiết ?:
var handler = Leave;
Tại sao nó tốt hơn so với văn bản này ?:
protected virtual void OnLeave(EmployeeEventArgs e) {
if (Leave != null)
Leave(this, e);
}
Yup. Bắt xử lý sự kiện được gọi sau khi hủy đăng ký nó là một cuộc đua không thể sửa chữa. NRE dễ dàng sửa chữa được. –