Я использую метод jQuery post в своей форме и отправляю свой ответ на пользовательский интерфейс, используя событие response.end, но всякий раз, когда я выполняю эту строку, это приводит к ошибке
"Ошибка прерывания потока"
Я видел много сообщений на stackoverflow.com abt той же проблемы, но никто не опубликовал возможные решения для этой ошибки. Каждый раз, когда я посылаю ответ на передний конец, это приводит к ошибке.
любые комментарии будут оценены.
Хорошо.. Я решил ошибку таким образом... Ну, я вызывал отдельную страницу из метода jquery post.
Я удалил весь HTML + DocType, который был на моей отдельной странице aspx, только я сохранил код директивы страницы и это... ничего больше.
<%@ Page Language="C#" AutoEventWireup="true" EnableTheming="false" StylesheetTheme="" Theme="" EnableEventValidation="false"
CodeFile="Approval_API.aspx.cs" Inherits="API_Approval_API" %>
Также в моем коде позади: я удалил Response.end и просто написал эту строку
var vjson = JsonConvert.SerializeObject(objPageRespone, Newtonsoft.Json.Formatting.Indented);
Response.Clear();
Response.ContentType = "application/json; charset=utf-8";
Response.Write(vjson);
Я не знаю, будет ли это работать для сценария Response.Redirect, но это сработало для моей проблемы.
Response.End() прекращает обработку сценария и возвращает текущий результат, он не будет обрабатывать дальнейшую обработку на сервере. Проверьте свою консоль и проверьте свой ответ на то, что возвращается, лучше добавить все необходимые заголовки и содержимое ответа до сброса ответа.
Response.End()
. Единственное, что вы можете сделать, это не оборачивать его в блок try или использовать другую логику для вашего приложения.