2011-09-02 17 views
14

Stworzyłem jedną usługę sieciową o typie ASMX. I używam mojej usługi sieciowej w aplikacji Windows .net.Jak zwiększyć limit czasu usługi internetowej w asp.net?

Metoda internetowa z usługi WWW odbiera konwersję tablicy bajtowej obiektu & obiekt mojej klasy mający różne atrybuty, w których dodaję jeden plik xml w postaci ciągu. Kiedy mój ciąg zawierający dane XML zwiększa się, daje mi błąd "Limit czasu" podczas wysyłania danych do usługi internetowej.

Jak zwiększyć limit czasu usługi internetowej?

Dzięki.

Odpowiedz

8

można to zrobić na kilka sposobów:

  1. Ustawianie limitu czasu w rozmówcy serwisu WWW z kodem (nie 100% pewien, ale myślę, że widziałem to zrobić);
  2. Ustawianie limitu czasu w konstruktorze proxy usługi sieciowej w odwołaniach do stron WWW;
  3. Ustawianie limitu czasu po stronie serwera, web.config aplikacji usługi sieci Web.

zobaczyć tutaj po więcej szczegółów na drugim przypadku:

http://msdn.microsoft.com/en-us/library/ff647786.aspx#scalenetchapt10_topic14

i tutaj szczegóły na ostatnim przypadku:

How to increase the timeout to a web service request?

+0

użyłem 2nd opcji i ustawić właściwość limitu czasu właściwości klasy proxy serwis internetowy, ale zgłasza wyjątek jako 'Połączenie podstawowe zostało zamknięte: połączenie zostało zamknięte unexpectedly.' – Priyanka

15

1 - Można ustawić limit czasu w aplikacji:

var client = new YourServiceReference.YourServiceClass(); 
client.Timeout = 60; // or -1 for infinite 

Jest w sekundach.

2 - Ponadto można zwiększyć wartość limitu czasu w tagu httpRuntime w web/app.config:

<configuration> 
    <system.web> 
      <httpRuntime executionTimeout="<<seconds>>" /> 
      ... 
    </system.web> 
</configuration> 
+6

Uwaga że httpRuntime Element idzie tutaj: ... –

+2

Według https://msdn.microsoft.com/en-us/library/e1f13641(v=vs.100) .aspx właściwość wyrażana jest w sekundach, a nie w milisekundach. –

+0

@SueMaurizio Dzięki za twoją poprawkę. – MOH3N

1

W pliku app.config (lub .exe.config) można dodać lub zmienić „ReceiveTimeout "właściwość w wiązaniu. tak

<binding name="WebServiceName" receiveTimeout="24:00:00" /> 
+0

Czy to prawda? pls wyjaśnić someOne. –

Powiązane problemy