2017-02-15 11 views
0

Я хочу, чтобы добавить переменную сессии в мой контроллер и доступ к нему на мой взгляд, контроллер выглядят так ..переменная сеанса не отображается в MVC зрения

 public ActionResult GetData() 
    { 
     var data = Repository.GetChartData(DateTime.Now.AddDays(-30), DateTime.Now); 
     Session["TheDate"] = DateTime.Now.ToShortDateString(); 
     return Json(data, JsonRequestBehavior.AllowGet); 
    } 

Но на мой взгляд, ничего не отображается, когда используя этот @Session [«TheDate»], что я могу сделать, чтобы сделать эту работу?

+0

Вы вызываете 'GetData()' с помощью ajax? –

+0

Да в функции javascript для заполнения диаграммы. – MTplus

+0

Вы можете поделиться кодом ajax? (функция javascript) –

ответ

0

Проблема здесь в том, что вы получаете доступ к данным JSON от AJAX. Вы не показываете представление на сервере.

Доступ к сеансу с синтаксисом бритвы @Session["TheDate"] работает только на стороне сервера (при визуализации представления). Вы не можете получить доступ к этому со стороны клиента (например, в обратном вызове запроса AJAX).

Возможно, вы можете передать дату клиенту как часть объекта JSON?

{ 
    "TheDate": "2017-02-15", 
    "Data": data 
} 
0

В результате я получил ответ JSON в своем javascript-коде, чтобы получить доступ к ответу JSON. Но я до сих пор считаю его странным, что переменные сеанса не работали ...