2012-01-17 5 views
2

GridView가 있다고하면 GridView는 WCF를 통해 데이터베이스의 데이터를 표시합니다. 내가 생각할 수있는데이터를 Silverlight에 유지하려면 어떻게해야합니까?

수있는 유일한 방법은 WCF (간단한)에서 쿼리를 계속

  1. 타이머를 사용하고 있습니다.

  2. 데이터를 데이터베이스에서 변경하면 쿼리 알림을 사용하므로 알림을받는 것이 가장 좋은 방법입니다. 그러나 이제는 WCF가 Silverlight 클라이언트와 데이터베이스 중간에 있으며 이므로 쿼리 알림은 WCF로만 전달됩니다. 그런 다음 이중 통신을 사용하도록 WCF를 만들려면 이 필요합니다.

그 일을 더 좋은 방법이 있나요 (이것은 농담입니다) ....

  • 새로 고침 ... 버튼을 (... 잔인한 사람처럼 소리)?

  • 답변

    0

    저는 의료 소프트웨어를 만드는 회사에서 일했었습니다. 의사와 주문을 모니터링하고 지속적으로 업데이트해야하는 응용 프로그램이있었습니다. 위에서 설명한대로 타이머를 사용했습니다. 몇 가지 추가 구성 요소가있었습니다. 예를 들어 소프트웨어에서 샘플링 속도를 변경할 수 있으므로 바쁜 시간에 느린 시간에 DB를 더 자주 Ping 할 수있었습니다. 캐싱도 구현되었습니다. 더 적은 양의 데이터를 먼저 가져온 다음 필요한 경우에만 더 당겨주는 시스템도있었습니다. 예를 들어, 마지막 업데이트 이후 의사가 라운드를하지 않은 경우 환자 데이터가 업데이트되었는지 확인하지 않아도됩니다. 그런 것들.

    +0

    예, 비슷한 구현을 보았습니다. 우리는 데이터베이스 테이블에 대한 변경 사항이 있는지 그리고 데이터베이스 테이블의 버전이 변경되었는지를 나타내는 작은 테이블을 가지고 있습니다. 따라서 데이터가 변경 될 때만 실제 데이터를 가져옵니다. 샘플링 속도가 다른 타이머는 좋은 아이디어이며 많은 대역폭을 절약합니다. 그러나 2와 유사한 것이 있는지보고 싶습니다. 당겨 야 할 필요가있을 때만 실제로 데이터를 가져 오므로 데이터베이스 (또는 WCF)를 핑 (ping)하지 않아도됩니다. –

    관련 문제