2009-06-16 16 views
0

다른 ASP.NET 웹 서비스를 웹 참조로 사용하는 ASP.NET C# 3.5 웹 응용 프로그램이 있습니다. 웹 서비스는 일부 독점 하드웨어 장치에 내장되어 있습니다. 문제는 해당 장치가 문제가 있고 쉽게 액세스 할 수 없다는 것입니다. 로드 시간이 1 분 이상 걸리므로 내 웹 응용 프로그램에 문제가 있습니다. 로드되지만 수용 할 수는 없습니다.웹 서비스를 사용할 수 없음

서비스는 시도의 catch 블록에서 인스턴스화 않고, 예외가 던져 존재하지 않지만, 출력 창 표시 형식 'System.Net.WebException'의

첫째 예외는 System.dll을 발생

나는 이것을 처리하는 더 좋은 방법이 있음을 알고 있지만 공백을 그리기하고 있습니다.

도움을 주시면 감사하겠습니다.

업데이트 : 웹 사이트에 영향을 미치지 않고 사용할 수없는 웹 서비스를 처리하는 방법에 대한 답변을 찾고 있습니다.


찢어지면서 예외가 발견되었습니다. 표준 "연결할 수 없음"예외입니다. 문제는 이제 타임 아웃입니다. asyncTimeout을 System.Web -> Pages 속성 아래의 web.config에서 5000으로 설정하려고했습니다. 그것은 예외를 던지기 위해 여전히 20 초 걸렸습니다. 어떤 아이디어?

답변

1

간단한 솔루션, 페이지로드 후 JavaScript를 사용하여 서비스를 폴링하십시오.

0

서비스의 빈도/사용법에 대한 세부 정보가없고 코드를 볼 수없는 경우 heres a thought 또는 two.

이 하드웨어에서 웹 메소드를 사용하면 오류가 발생하는 경우가 많으므로 지원 옵션 (있는 경우)을 사용하고 싶지만 낄낄 거림이 있으면 도움을 요청하십시오.

나는 어떤 사람들은 온라인 그들이 그런 식으로 귀하가 실수로 오래된를 사용하지 않는, 요청 객체에 거짓KeepAlive를을 설정하여 (자신의 시나리오에서)이 문제를 해결받을 수 있다고 말했다 것으로 나타났습니다 (부실) 연결. "Keep Alive"를 시도하려했으나 웹 서버가 연결을 시간 초과했습니다. 가치가있는 빠른 시도 ...

행운을 빌어 요!

+0

표시 할 나쁜 코드가 있습니다. 문제를 알고 있습니다. 서비스를 사용할 수 없습니다. 내 응용 프로그램에 영향을주지 않기 위해 서비스를 처리하는 방법을 더 찾고있었습니다. 기본적으로 서비스를 사용할 수있을 때 서비스를 사용하고 서비스없이 정상적으로 성능 저하를 원합니다. 희망 사항은 조금 이상합니다. 도움을 주셔서 감사합니다 –

0

위의 내용 외에도 http 디버거 (예 : fiddler2)를 사용하면 전선에서 일어나는 일을보다 잘 이해할 수 있습니다.

+0

좋은 점, 바이올린입니다. – curtisk

+0

피들러는 오류를보고하지 않습니다. –

1

"첫 번째 예외"를 보았지만 예외 핸들러가 그것을 얻지 못했다면 그 예외는 다른 곳에서 처리되었음을 의미합니다 (삼키거나 예외 처리기에서 소비 됨). 아마도 .NET 라이브러리의 일부 이미 해당 예외를 처리했으며 코드에서이 예외를 염려 할 필요가 없습니다. 아니면 코드에서 어딘가에 삼키는 예외가 남아있을 수도 있습니다.

웹 요청에서 시간 초과를 사용하는 것을 고려해야합니다.

관련 문제