From what I've been looking for ( here ), I can save a list of data in a TempData created in a function, to use in another function in my Controller.
Now, I'm trying to do this, but I can not do it:
Model:
...
namespace ARTSOFT.dal.ViewModels
{
public class Localidades
{
public string Familia { get; set; }
public string Subfamilia { get; set; }
public string Registo { get; set; }
public string Descricao { get; set; }
}
public class LocalidadesFormViewModel
{
public Localidades Localidades { get; private set; }
public LocalidadesFormViewModel(Localidades localidades)
{
Localidades = localidades;
}
}
}
Function where I create the TempData:
public ActionResult AtribuirOrdemServ()
{
...
var newListaLocalidades = new List<ARTSOFT.dal.ViewModels.Localidades>();
foreach (var item in localidades)
{
var newItemLocalidade = new ARTSOFT.dal.ViewModels.Localidades();
newItemLocalidade.Familia = item.ToString().Split(',')[0].Split('{')[1].Split('=')[1].Split(' ')[1];
newItemLocalidade.Subfamilia = item.ToString().Split(',')[1].Split('=')[1].Split(' ')[1];
newItemLocalidade.Registo = item.ToString().Split(',')[2].Split('=')[1].Split(' ')[1];
newItemLocalidade.Descricao = item.ToString().Split(',')[3].Split('}')[0].Split('=')[1].Split('"')[0];
newListaLocalidades.Add(newItemLocalidade);
}
TempData["ListaLocalidades"] = newListaLocalidades.ToList();
return View("IndexAtribuirOrdemServ");
}
Then I'm trying to access another function via JavaScript, and I wanted to fetch this TempData:
$("#divResultFiltroAtribuirOrdemServ").load("FiltroAtribuirOrdemServ"
, function () {
...
});
And the FiltroAtribuirOrdemServ
function:
public ActionResult FiltroAtribuirOrdemServ(){
...
var teste = (Localidades)TempData["ListaLocalidades"];
}
Where do I get the TempData["ListaLocalidades"]
always null