인터넷에 검색 해 보면…
포트를 열고 통신을 시킨다던가
파일로 공유한다던가… 다양한 방법이 있는 것 같다.
내 경우에는 실시간으로 이뤄져야 하고 용량이 커서 파일 공유는 문제가 있었다.
그럼 메모리를 통한 공유도 문제가 되고..
문제상황:
갑 프로젝트에서 컨트롤하는 을1, 을2, 을3 프로젝트가 있다.
갑프로젝트에서 을1,2,3프로젝트의 함수를 호출한 후 나온 데이터를 처리한 후 갑 프로젝트로 보내줘야한다. 갑 프로젝트는 데이터를 받으면 바로 처리를 해서 화면에 띄운다.
리턴형태로 보내줄수도 있지만…. 리턴형태로 하나하나 해주다 보니 너무 복잡해진다. 그래서 데이터를 편하게 주고받을 방법을 찾아보려고… 생각한게 새 프로젝트..
요구사항:
데이터를 자유롭게 공유할 수 있어야 함.
빠른 공유가 가능해야함.
데이터가 변경될 때 마다 이벤트를 줄 수 있어야함
public static class ClsData//공유용 클래스... { public static DataTable dtbl공유용; public static int a; }
클래스라이브러리 프로젝트를 대강 이런식으로 만들어서 양쪽에서 사용했다. 스태틱으로 선언하면 양쪽 프로젝트에서 접근해도 같은 값을 유지한다. 새로운 객체가 생성이 안되니까..
이벤트를 전달할 수 없다는게 아쉽긴 했지만….
이벤트를 전달하지 못한다는 점에서 완벽한 해결책은 아니다.
포트통신으로 하면 왠지 어려울것같고.. 불편할 것 같고….
……..뭔가 꼬이긴 했는데 … 다시 만들기도 그렇고.. 다시만들어도 똑같은 꼴이 날 것 같고… 어떻게든 고쳐서 쓰긴 해야겠는데…
일단은 이정도로 만족해야할 듯 하다.
이벤트를 전달할 방법만 찾으면 될듯 싶다.