Próbuję zamknąć odpowiedź, używając Context.Response.End
, ale pojawia się błąd "Thread was being aborted"
.Context.Response.End() i wątek został przerwany
Jak poprawnie zamknąć odpowiedź bez wyzwalania wyjątku?
try {
Context.Response.Clear();
Context.Response.ContentType = "text/html";
//Context.Response.ContentType = "application/json";
JsonObjectCollection collection = new JsonObjectCollection();
collection.Add(new JsonNumericValue("resultcode", 1));
collection.Add(new JsonStringValue("sourceurl", exchangeData.cUrl));
collection.Add(new JsonStringValue("filename", fileName));
collection.Add(new JsonStringValue("filesize", fileSize));
collection.Add(new JsonStringValue("fileurl", Common.GetPDFURL + outputFileName));
JsonUtility.GenerateIndentedJsonText = true;
Context.Response.Write(collection);
try {
Context.Response.End();
} catch (ThreadAbortException exc) {
// This should be first catch block i.e. before generic Exception
// This Catch block is to absorb exception thrown by Response.End
}
} catch (Exception err) {
}
rozwiązany przez siebie kod powinien wyglądać
try {
Context.Response.End();
} catch (ThreadAbortException err) {
}
catch (Exception err) {
}
nie masz respose.end wewnątrz bloku try catch? – Andrew
Dodałem mój kod. Tak, dodałem Context.Response.End(); wewnątrz bloku Try/catch i jak widać główny blok Try/catch, który jest również błędem przechwytywania "Wątek został przerwany". – Tomas
rozwiązywane przez siebie kod powinien wyglądać spróbować { } catch (ThreadAbortException Err) { } catch (Exception Err) { } – Tomas