Вам потребуется выполнить AJAX-вызов с клиентской стороны для метода веб-службы или метода страницы (веб-метод определен на вашей странице).
Если вы выберете опцию метода страницы, ваш код может быть чем-токак это:
Ваш код позади вашего Page.aspx
public class CustomSessionObject
{
public string Name { get; set; }
}
[WebMethod]
public static object GetSessionData()
{
try
{
return HttpContext.Current.Session["THE_SESSION_VAR_YOU_NEED"] as CustomSessionObject;
}
catch (Exception e)
{
//Log Exception
throw;
}
}
Я бы не советовал всегда возвращать все сессионные переменные.Сделайте это явным и верните только те, которые вам нужны.Таким образом, если в более поздний момент времени другой разработчик добавит больше пользовательских сессий, они также не будут возвращены.Если вы сделаете это, это может привести к утечке безопасности в будущем.
Использование JQuery для выполнения вызова AJAX.
var handleError = function(jqXHR, textStatus, errorThrown) {
alert("An error occurred: " + jqXHR.responseText);
};
var handleSuccess = function(data, textStatus, jqXHR) {
if (data && data.d) {
alert(data.d.Name);
}
};
$.ajax({
url: 'Page.aspx/GetSessionData',
type: "POST",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: handleSuccess,
error: handleErr
});
Также прочитайте this , чтобы узнать большеИнформация.