답변:
서버 쪽 또는 클라이언트 쪽을 언급하고 있습니까?
클라이언트 의 경우 바인딩 요소 의 sendTimeout 속성 을 조정하려고합니다 . 서비스 의 경우 바인딩 요소 의 receiveTimeout 속성 을 조정하려고합니다 .
<system.serviceModel>
<bindings>
<netTcpBinding>
<binding name="longTimeoutBinding"
receiveTimeout="00:10:00" sendTimeout="00:10:00">
<security mode="None"/>
</binding>
</netTcpBinding>
</bindings>
<services>
<service name="longTimeoutService"
behaviorConfiguration="longTimeoutBehavior">
<endpoint address="net.tcp://localhost/longtimeout/"
binding="netTcpBinding" bindingConfiguration="longTimeoutBinding" />
</service>
....
물론 원하는 엔드 포인트를 해당 바인딩에 매핑해야합니다.
receiveTimeout
세션 기반 바인딩 게으름의 서버 측을 다스리 결정합니다. 예를 들어, 서버는 기본 HTTP 바인딩에이 설정을 사용하지 않습니다. 당신은 WCF에 대한 자신의 서버 측 처리 시간 제한을 롤해야
Visual Studio 2008의 도구 메뉴 (또는 올바른 WCF 항목이 설치된 경우 2005)에는 'WCF 서비스 구성 편집기'라는 옵션이 있습니다.
여기에서 클라이언트와 서비스 모두에 대한 바인딩 옵션을 변경할 수 있습니다. 이러한 옵션 중 하나는 시간 종료를위한 것입니다.
다른 타임 아웃은 다른 것을 의미합니다. 클라이언트에서 작업 할 때 .. 대부분 SendTimeout을보고있을 것입니다.이 참조를 확인하십시오-훌륭하고 관련된 설명 : http://social.msdn.microsoft.com/Forums/en-US/wcf/thread / 84551e45-19a2-4d0d-bcc0-516a4041943d /
두 가지 방법을 선택할 수 있습니다.
1) 클라이언트의 코드
public static void Main()
{
Uri baseAddress = new Uri("http://localhost/MyServer/MyService");
try
{
ServiceHost serviceHost = new ServiceHost(typeof(CalculatorService));
WSHttpBinding binding = new WSHttpBinding();
binding.OpenTimeout = new TimeSpan(0, 10, 0);
binding.CloseTimeout = new TimeSpan(0, 10, 0);
binding.SendTimeout = new TimeSpan(0, 10, 0);
binding.ReceiveTimeout = new TimeSpan(0, 10, 0);
serviceHost.AddServiceEndpoint("ICalculator", binding, baseAddress);
serviceHost.Open();
// The service can now be accessed.
Console.WriteLine("The service is ready.");
Console.WriteLine("Press <ENTER> to terminate service.");
Console.WriteLine();
Console.ReadLine();
}
catch (CommunicationException ex)
{
// Handle exception ...
}
}
2) 웹 서버에서 WebConfig로
<configuration>
<system.serviceModel>
<bindings>
<wsHttpBinding>
<binding openTimeout="00:10:00"
closeTimeout="00:10:00"
sendTimeout="00:10:00"
receiveTimeout="00:10:00">
</binding>
</wsHttpBinding>
</bindings>
</system.serviceModel>
자세한 내용은 공식 문서를 참조하십시오