Đây thực sự là một kịch bản khá phổ biến. Bạn không thể làm bất cứ điều gì dựa trên ứng dụng khách vì ứng dụng khách có thể biến mất và ngắt kết nối và bạn sẽ mất công việc đã đạt được cho đến nay. Giải pháp là sử dụng Kích hoạt Nhà môi giới Dịch vụ :bạn tạo một dịch vụ trong cơ sở dữ liệu và đính kèm một thủ tục đã được kích hoạt. Trong ứng dụng của bạn (hoặc trang ASP), bạn gửi tin nhắn đến dịch vụ và nhúng các tham số cần thiết cho quy trình của mình. Sau khi ứng dụng của bạn cam kết, thông báo sẽ kích hoạt quy trình dịch vụ. thủ tục dịch vụ đọc các tham số từ thông báo và gọi thủ tục của bạn. vì kích hoạt xảy ra trên một chuỗi máy chủ không liên quan đến kết nối ban đầu của bạn, điều này là đáng tin cậy. Trên thực tế, máy chủ thậm chí có thể tắt và khởi động lại trong khi thủ tục của bạn đang được thực thi và công việc sẽ được quay lại sau đó tiếp tục lại, vì thông báo kích hoạt sẽ kích hoạt lại quy trình dịch vụ sau khi khởi động lại.
Cập nhật
Tôi đã xuất bản chi tiết về cách thực hiện việc này, bao gồm cả mã mẫu trên blog của tôi: Thực thi thủ tục không đồng bộ .