Подтвердить что ты не робот

Принуждение обратной передачи

Есть ли способ заставить обратную передачу в коде?

Я хочу заставить повысить обратную передачу из метода в коде С# за моим веб-приложением asp.net.

4b9b3361

Ответ 2

Вы можете попробовать перенаправить на ту же страницу.

Response.Redirect(Request.RawUrl);

Ответ 3

Simpler:

ScriptManager.RegisterStartupScript(this.Page, this.Page.GetType(), "DoPostBack", "__doPostBack(sender, e)", true);

Ответ 4

Нет, не из кода. Обратный вызов - это запрос, инициированный на странице клиента на сервере, используя метод Http POST. На стороне сервера вы можете запросить перенаправление, но это будет запрос Http GET.

Ответ 5

Здесь решение от http://forums.asp.net/t/928411.aspx/1, как упоминалось mamoo - на всякий случай, когда веб-сайт отключен. Хорошо работал у меня.

StringBuilder sbScript = new StringBuilder();

sbScript.Append("<script language='JavaScript' type='text/javascript'>\n");
sbScript.Append("<!--\n");
sbScript.Append(this.GetPostBackEventReference(this, "PBArg") + ";\n");
sbScript.Append("// -->\n");
sbScript.Append("</script>\n");

this.RegisterStartupScript("AutoPostBackScript", sbScript.ToString());

Ответ 6

Вы можете вручную вызвать метод, вызванный PostBack, из события Page_Load:

public void Page_Load(object sender, EventArgs e)
{
    MyPostBackMethod(sender, e);
}

Но если вы имеете в виду, если у вас есть свойство Page.IsPostBack, установленное на true без реального сообщения назад, тогда ответ будет отрицательным.

Ответ 7

Вы можете использовать элемент управления с привязкой к данным, например, Repeater или ListView, привязать его к списку свойств управления по мере необходимости и позволить ему генерировать элементы управления динамически.

В качестве альтернативы вы можете использовать Response.Redirect(".") для повторной загрузки одной и той же страницы.

Ответ 8

Используя Server.Transfer( "YourCurrentPage.aspx" ); мы можем легко добиться этого, и это лучше, чем Response.Redirect(); coz Server.Transfer() сохранит вас в оба конца.