Tôi đang nhập một tệp hóa đơn phẳng vào cơ sở dữ liệu bằng C#. Tôi đang sử dụng TransactionScope để cuộn lại toàn bộ hoạt động nếu gặp sự cố.Giao dịch trong một Giao dịch trong C#
Đây là tệp đầu vào phức tạp, trong đó một hàng không cần thiết bằng một bản ghi. Nó cũng bao gồm các bản ghi liên kết. Hóa đơn sẽ có dòng tiêu đề, chi tiết đơn hàng và sau đó là một dòng tổng. Một số hóa đơn sẽ cần phải được bỏ qua, nhưng tôi có thể không biết nó cần phải được bỏ qua cho đến khi tôi đạt đến tổng số dòng.
Một chiến lược là lưu trữ tiêu đề, chi tiết đơn hàng và tổng dòng trong bộ nhớ và lưu mọi thứ khi đạt đến tổng số dòng. Tôi đang theo đuổi điều đó ngay bây giờ.
Tuy nhiên, tôi đã tự hỏi nếu nó có thể được thực hiện theo một cách khác. Tạo giao dịch "lồng nhau" xung quanh hóa đơn, chèn hàng tiêu đề và chi tiết đơn hàng, sau đó cập nhật hóa đơn khi đạt đến tổng số dòng. Giao dịch "lồng nhau" này sẽ quay trở lại nếu xác định hóa đơn cần được bỏ qua, nhưng giao dịch tổng thể sẽ tiếp tục.
Điều này có thể, thiết thực và bạn sẽ thiết lập điều này như thế nào?
+1 - điểm lưu trữ là lựa chọn hoàn hảo cho việc này –