2009-06-18 4 views
2

파이어 버드 데이터베이스를 사용하여 데이터를 저장하는 델파이 프로그램에서 작업합니다. 그것은 집에서 자란 o.r.m을 사용합니다. 체계. 두 사용자가 동일한 데이터 (예 : 데이터 그리드)를보고 다른 사용자가 무언가를 변경하면 다른 화면이 즉시 업데이트됩니다. 이 방법은 한 프로그램의 개체가 데이터베이스에 자체 개체를 저장하는 방식입니다. 데이터베이스에는이 변경 사항을 보조 변경 로그 테이블에 등록하는 트리거가 있습니다. 이 변경 로그 테이블에 기록하면 이벤트가 트리거됩니다. 두 번째 프로그램은 해당 이벤트를 수신하고 변경된 로그 테이블의 항목에서 변경된 개체를 알고 있습니다. 해당 객체를 다시로드하고 해당 프로그램에서 내부적으로 이벤트를 발생시킵니다. 이 이벤트는이 개체를 표시하는 모든 화면과이 개체의 동작을 기반으로하는 모든 개체가 업데이트되도록합니다. .Net 및 아마도 MS SQL로 전환하고 싶습니다. 내 질문 : 1) MS SQL에서 어떻게합니까? 2) 이것을 지원하는 프레임 워크가 있습니까? 그래서 이것을 포팅 할 필요가 없습니다. 닷넷다중 사용자 이벤트 기반 화면 업데이트를 수행하는 방법은 무엇입니까?

답변

0

C#에서 구현하기에는 너무 어려울 것 같지 않습니다. 사용자 모드와 상관없이 "관찰자 패턴"을 사용해보십시오.

1

.Net Framework 2.0 및 MSSqlServer 2005 버전에서는 변경 알림을 지원하므로 SqlDependency 클래스를 사용합니다. codeproject에 예제가 있습니다.

msdn에서 알림 사용에 대한 몇 가지 권장 사항을 살펴보십시오.

관련 문제