Нужна помощь по настройке и получению объекта из сеанса в веб-службах asp.net. Я сохраняю сеанс в одном методе службы, и когда пытаюсь его восстановить, он просто дает null. Пример кода ниже для сохранения сеансаНевозможно сохранить и получить значение из сеанса веб-службы ASMX asp.net на AJAX Call
[WebMethod(EnableSession = true)]
[ScriptMethod(ResponseFormat = ResponseFormat.Json)]
public string setObj(NameValue[] formVars)
{
MyObject obj = new MyObject();
obj.vlaue = "1";
Session["obj"] = (object) obj;
return new JavaScriptSerializer().Serialize("");
}
Для получения сессии:
[WebMethod(EnableSession = true)]
[ScriptMethod(ResponseFormat = ResponseFormat.Json)]
public string getObj(NameValue[] formVars)
{
MyObject obj = new MyObject();
obj = (MyObject)Session["obj"] ;
return new JavaScriptSerializer().Serialize(obj.value);
}
В приведенных выше данных кода сеанса является недействительным. Я также добавить состояние сеанса в веб-конфигурации, но не будет работать:
<system.web>
<pages>
<namespaces>
<add namespace="System.Web.SessionState"/>
</namespaces>
</pages>
<sessionState mode="InProc"></sessionState>
Спасибо.
Во-первых .. использование HttpContext.Current.Session .. Также почему вы бросаете свой Myobject на объект, когда вы храните его в сеансе? Просто сохраните его как MyObject. – Wheels73
@ Wheels73 Я использовал HttpContext.Current.Session, но это тоже не сработает. также пытался напрямую хранить Myobject в сеансе. Все еще дает Null при следующем вызове метода .. :( –
вы проверили sessionid на объекте Session при настройке и извлечении ... они одинаковы? – Wheels73