Tôi phải gửi email, ghi vào một tập tin và gọi một dịch vụ web. Để duy trì tính nhất quán, tất cả các bước phải xảy ra. Nếu bất kỳ bước nào ném ra một ngoại lệ hoặc lỗi, tất cả các bước phải được khôi phục.Các mẫu để thực hiện các giao dịch bên ngoài cơ sở dữ liệu
Trước khi tôi chuyển động cơ ACID đối tượng của riêng mình, có bất kỳ mẫu được chấp nhận phổ biến nào để triển khai ngữ nghĩa ACID ở cấp đối tượng không?
Tốt hơn, có bất kỳ thư viện hiện có nào tôi có thể sử dụng cho nền tảng .NET không?
Chỉnh sửa: Tôi biết việc gửi email không thể hoàn tác được nhưng không kết nối được với máy chủ SMTP là nguyên nhân gây ra toàn bộ giao dịch. Ngoài ra, tôi muốn điều này được mở rộng để sử dụng với các hành động trong tương lai.
Làm cách nào để bạn quay lại email? – mbeckish
có thể gửi hồi âm :) –
Lệnh rút lại sẽ hoạt động. Về lý thuyết, tôi có thể nhổ nó ra khỏi máy chủ Exchange như thể nó không bao giờ xảy ra, nhưng điều đó có thể bị cá. –