해당 응용 프로그램의 데이터베이스에 트리거를 추가하여 Rebus를 타사 응용 프로그램과 통합하려면 트리거가 데이터베이스의 변경 사항에 대한 정보가 들어있는 Rebus 메시지 형식으로 레코드를 삽입합니다. (조작 유형 : 삽입, 갱신, 삭제, 테이블 이름 및 행 ID). 이 작업을 쉽게 수행 할 수있는 방법이 있습니까 아니면 직접 저장 프로 시저를 작성해야합니까? https://github.com/rebus-org/Rebus/blob/master/src/Rebus/Transports/Sql/SqlServerMessageQueue.cs 전송 방법은 무엇입니까?T-SQL을 사용하여 SQL Server에 Rebus 메시지 삽입
또는 방금 트리거에서 매개 변수를 사용하여 EXE를 실행할 수도 있지만 트랜잭션이 아닙니다.
나는이 문제를 보았습니다. https://github.com/rebus-org/Rebus/issues/119하지만 죽은 생각 인 것 같습니다.
다른 권장 방법이 있습니까?
업데이트 :은 (SQL-CLR하지 않고도 가능하지 않음)이 SQL에서 할 미친 것, 그래서 내가 수수께끼 메시지의 단지 실현 몸이 직렬화 어쩌면 유일한 방법은 ReceiveMessage와 사용자 정의 전송을 생성하는 것입니다 내 형식으로 메시지를 수락하는 방법? 사전 :)에서
덕분에
멋진 생각 :)이 XML은 업데이트 및 삭제에 어떻게 보이나요? 삽입 할 경우에는 실제로 새 데이터를 선택해야하지만, 업데이트의 경우 원본 상태와 다를 수 있으며 삭제가 발생했다는 정보 만 삭제할 수 있습니까? – user1121956
데이터는 거래와 관련된 거래이므로 삭제되지 않았으며 단순히 상태 필드를 사용하여 취소 여부를 나타냅니다. 인서트/업데이트는 동일한 방식으로 처리되었으므로 기본적으로 변경 될 때마다 전체 업데이트를 수행했습니다. – mookid8000
119 호에 나온 것처럼 전송 도구 대신 Timer를 사용하는 이유가 궁금합니다. – user1121956