문제

그 사용합니다.NET 데이터 심지어는 응용 프로그램에서 사용하여 로컬에서-프로세스는 데이터베이스 응용 프로그램 데이터에 대한 지속성은?

는 경우에 데이터 집합은 주로 의미에서는 메모리 캐싱 데이터베이스의 결과,같은 소리 그들은 그렇지 않은 경우에 유용 같은 것을 사용하여 SQL 서버 컴팩트한 로컬 데이터베이스에서 실행되는 동일한 프로세스의 응용 프로그램.

다른 사용하는 이유는 입력한 데이터셋?말하는,그들은 쉽게 WPF 데이터 바인딩?

도움이 되었습니까?

해결책

내 질문에 대답하려고 노력하겠습니다.

데이터 세트는 다음과 같은 사용 사례를 위해 설계된 것 같습니다.

  1. 데이터는 원격 DB에서 메모리 인 캐시 (데이터 세트)로로드됩니다.
  2. 캐시 된 사본은 데이터베이스에 대한 활성 연결없이 사소한 방식 (다중 테이블, 삭제, 추가, 업데이트)으로 작동합니다.
    • 이러한 작업을 가능하게하려면 DB 관계를 로컬 캐시로 모델링해야합니다.
    • UI (예 : WPF)에 대한 데이터 바인딩은 데이터의 메모리 사본을 작업하기 때문에 사소한 일입니다.
  3. 캐시 된 사본은 때때로 실제 지속성을 위해 원격 DB로 업데이트됩니다.
    • 예를 들어 클라이언트가 온라인 상태로 돌아 오거나 사용자가 "적용"을 눌러 진정으로 데이터를 커밋 할 때 발생할 수 있습니다.

로컬 임시 데이터베이스를 사용하면 완전히 오프라인으로 작동 할 필요가 없습니다. 로컬 DB 연결을 항상 사용할 수 있습니다. 이는 ADD, DELETE 및 UPDATE를 가능하게하기 위해 로컬 캐시에 복잡한 DB 관계 (잠재적으로) 복잡한 DB 관계가 불필요하다는 것을 시사합니다. 오히려 데이터베이스에서 데이터를 직접 수정하고 데이터를 볼 수있는 사용자 정의 로컬 캐시 만 유지합니다. 로컬 캐시는 DB 층에서 분리되어 자체 뷰 모델 레이어 (MVVM)에 넣을 수 있습니다.

다른 팁

나는 모두 제거 입력된 데이터에서 내 응용 프로그램이 있습니다.그것은 너무 오래 걸리는 그들을 만듭니다.에 의해 작성 내 말은 새로운 문의/생성자입니다.또한 데이터를 검색하는 효율적으로 사용하 DataReaders 직접 있습니다.

알지 못하는 경우 많은 질문(와 DataReader)하는 프로세스는 데이터베이스 응용 프로그램을 만들이 많이 느립니다.내 생각에 그냥 당신에 따라 달라집니다.

대부분은 빠르게 캐시 데이터를 분석하는 추가 SQL 문을 검색하는 정보.하지만 다시 추가 메모리를 소요한 비용.

SQL Server Compact를 사용하여 SQL Server에서 작동하는 응용 프로그램을 쉽게 테스트 할 수 있습니다. SQL Server Compact가 없으면 테스트는 단위 테스트가 아닌 통합 테스트입니다 (구성하기가 어렵고 실행하는 데 더 많은 시간이 걸립니다).

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top