2011-11-15 1 views
0

서비스 계약이 포함 된 DLL을 참조하는 서비스가 있고 구현이 IIS에서 호스팅되는 서비스에 있습니다.WCF의 디자인 문제

동일한 DLL을 참조하는 클라이언트를 사용하고 있습니다.

내가 채널 팩터를 사용하여 서비스 메소드를 호출하고 내 서버 엔드 포인트 제 의뢰인 app.config

내 서비스 방법의 모든 클라이언트 섹션에서 수동으로 정의 된 모든 데이터베이스 작업을 시작하기 전에 연결 문자열을 알아야합니다. 이제 각 기능 요청에 대한 연결을 만들고 싶지는 않습니다. 성능이 저하되고 내 서비스가 다른 대부분의 구성 요소에 공통적으로 적용되므로 일반적인 방법으로 만들고 싶습니다.

유틸리티 나 디자인이 있습니까? WCF에서 사용할 수있는 패턴?

+1

을, 나는 ** 항상 DB를 호출하기 전에 가능한 늦게 **으로 ** 데이터베이스 연결을 열 ** 추천, 그리고 것입니다 ** 닫는 등 최대한 빨리 서비스가 시작될 때 연결을 열지 말고 장시간 열어 두십시오! –

+1

마크 당신은 항상 도움이됩니다, 덕분에 톤 –

답변

1

잘 모르겠습니다. 귀하의 질문을 완전히 이해하고 있지만 위에 쓴 내용을 토대로 상황을 지나치게 생각할 수도 있습니다.

서비스 메서드가 (데이터베이스 작업을 수행하기 전에) 연결 문자열을 알아야 할 경우 서비스의 Web.config 파일에 넣지 않는 이유는 무엇입니까?

저에게 가장 의미가있는 것처럼 보입니다. 내가 놓쳤거나 알고 있지 않은 다른 요인/고려 사항이 없다면?

또한 데이터베이스 액세스 방법에 따라 .NET에서 연결 풀링을 구현합니다 (적어도 ADO.NET에서는). 여기를 참조하십시오 : 다시 ** 연결 실제로

SQL Server Connection Pooling (ADO.NET)