2011-10-11 3 views
1

Tcp 연결을 수신하는 C# 서버를 작성했습니다. 클라이언트는 서버에 연결하여 데이터 (주로 파일 이름)를 보낼 수 있습니다. 서버가받는 데이터는 ASP.NET으로 작성된 웹 사이트에 표시되어야합니다.C# 서버 프로세스와 웹 사이트간에 데이터 공유

저는 파이프를 사용하여 서버 프로세스에서 웹 사이트로 데이터를 전송할 생각이었습니다. 이것이 올바른 방법일까요, 아니면 이것을하는 더 똑똑한 방법이 있습니까?

+0

을 쓸 수 있습니까? –

+0

옵션입니다. Felice Pollano의 게시물에 대한 내 의견을 참조하십시오. – Carlito

답변

1

웹 사이트를 호스팅하는 프로세스 (작업자 프로세스)가 언제든지 재활용 될 수 있기 때문에 파이프를 사용할 수 없다고 생각합니다.이 문제에 대해서는 제어 할 수 없습니다. 귀하의 서비스와 asp.net 응용 프로그램 사이의 정보를 공유하는 일반 오래된 데이터베이스를 가지고하는 것이 좋습니다. db가 너무 많다고 생각하면 일반 파일 (또는 xml은 중요하지 않음)을 사용할 수 있지만이 경우 두 프로세스가 동시에 파일을 열려고하므로 동시성에 유의해야합니다.

+0

db 또는 파일 사용은 옵션이지만 웹 사이트에 알림을 받아야합니다. 사용자가 버튼을 클릭하고, 서버가 클라이언트에 요청을 보내고, 클라이언트가 서버에 데이터를 다시 보내고, 서버가 데이터를 웹 사이트로 다시 보냅니다. db 또는 파일에 데이터가 준비되어 있는지 웹 페이지에 알리는 방법을 모르겠습니다. 어떤 아이디어? – Carlito

+0

파일을 모니터하기 위해'FileSystemWatcher'를 사용할 수 있고, 테이블을 모니터하기 위해'SqlDependency'를 사용하거나, 데이터베이스를 통해 쿼리를 실행하고 그 파일이 이미 사용 가능한지보기 위해 단지 "여기를 클릭하십시오."를 사용할 수 있습니다. –

+0

감사합니다. SqlDependency에 대해 알지 못했습니다. 나는 그것을 밖으로 검사 할지도 모른다! – Carlito

0

당신은 SQL 데이터베이스를 통해 두 개의 응용 프로그램을 쉽게 옵션 아니라고 연결 클라이언트/서버 및 다른 프로토콜에 대한 웹 사이트에 이야기 할 수있는 WCF 서비스 .....

+0

WCF에 대해 들어 본 적이 없으므로 살펴볼 것입니다. – Carlito

관련 문제