使用 BizTalk Server 在 SQL 中接收位置明細之後接收查詢通知
假設您有 BizTalk 應用程式會在對 EMPLOYEE 資料表進行變更時接收資料庫變更通知訊息。 如果設定為 BizTalk 應用程式一部分的接收位置細分,而且同時將記錄新增至 EMPLOYEE 資料表,您就不會收到最近新增記錄的通知。 您也不知道接收位置何時再次可用。 SQL 配接器會公開 Binding 屬性 NotifyOnListenerStart,您可以設定來取得接收位置已復原的通知。 您可以為 NotifyOnListenerStart 系結屬性指定下列值:
將此屬性設定為 True,以在接收位置復原後立即收到通知,告知接收位置可供使用。
將此屬性設定為 False,以在接收位置復原之後,不會收到通知,告知接收位置已復原。
預設值為 True。
設定 SQL 配接器行為
針對任一種方法,您不需要在產生中繼資料或設定 BizTalk 應用程式時執行任何特定工作。 您只需要根據 WCF-Custom 或 WCF-SQL 接收位置設定 NotifyOnListenerStart 系結屬性。 若要建立 BizTalk 應用程式,您必須執行一組相同的工作,如使用 BizTalk Server 從 SQL 以累加方式接收查詢通知中所述。 不過,使用 BizTalk Server 設定 BizTalk 應用程式時,您可以嘗試變更NotifyOnListenerStart系結屬性的值,並查看這兩個組態的差異。
下圖示范如何根據 NotifyOnListenerStart 系結屬性的值來接收通知。
請注意,在第一個案例中,當 NotifyOnListenerStart 設定為 true 且記錄會在接收位置關閉時插入資料庫資料表時,配接器只會在接收位置備份時傳送通知訊息給您。 配接器不會執行任何作業來處理在接收位置關閉時插入的記錄。 配接器用戶端必須在其應用程式中實作相關邏輯,以處理在接收位置關閉時插入的記錄。