2011-11-14 4 views
0

저는 C#을 사용하여 한 번에 두 개의 파일에 쓰려고합니다. 보조 폴더의 위치는 지속적으로 변경되므로 한 번에 세 개 이상의 폴더에 출력을 기록해야 할 수도 있습니다. 이 작업을 수행하는 가장 좋은 방법은 무엇입니까?C#에서 한 번에 2 개 이상의 텍스트 파일에 쓰기

저는 현재 을 사용하여 특정 정적 위치에 쓰는 기능이 Output(string s)입니다. 나는 syncFolder(string[] folderPaths) 함수를 추가하여 Output의 끝에 폴더 2,3,4의 내용 (폴더 및 텍스트 파일)을 업데이트하여 폴더 1의 내용과 정확하게 일치시킬 수 있다고 생각합니다.

Is 이걸하는 가장 좋은 방법은? 그렇다면 폴더를 어떻게 동기화합니까?

+1

당신이 묘사 한 것은 다소 불명확합니다 ...이 목표는 무엇입니까? 하나의 파일에 쓰지 않고 복사하면 비슷한 효과가 나타 납니까? – Yahia

+0

보조 폴더는 원래 폴더에 대한 심볼 링크 일 수 있습니까? 아니면 파일의 개별 복사본이어야합니까? – mbeckish

+0

이 로깅의 목표는 무엇입니까? 그렇다면 이미 다중 스트림을 지원하고 런타임 구성이 가능한 NLog와 같은 로깅 라이브러리를 확인해보십시오. –

답변

0

데이터 소스 클래스, 데이터 싱크 클래스가있는 다양한 추적 및 로깅 라이브러리와 같은 접근 방식을 사용할 수 있으며 세 번째 구성/레이아웃/렌더러 집합 집합과 함께 바인딩 할 수 있습니다.

관계형에서는 다 대다 관계가 가능합니다.

스트림 독자와 작성자가이 작업을 수행 할 것이지만 나는 1 : 1로 결합되도록 설계되었다고 생각합니다.

조사하고자하는 디자인 패턴은 Observer Pattern입니다. C#에서는 이벤트로 구현됩니다. 이것은 소스에서 호출 할 때마다 위임 호출 (delegate call)로 인해 세계에서 가장 빠른 솔루션이 아닐 수도 있지만 확실히 가장 유연합니다. 또한 비동기 싱크 배수 장치에 적합해야합니다.

관련 문제