2017-03-14 8 views
0

Homecontrollerkeine Daten zurückgegeben werden

[ValidateInput(false)] 
public ActionResult Index() 
{ 
    FormsAuthentication.SignOut(); 
    Session.Clear(); 
    Session.Abandon(); 
    EmployeeViewModel evm = new EmployeeViewModel(); 
    ViewBag.wresult = Request.Form["wresult"]; 
    if (!string.IsNullOrWhiteSpace(Request.Form["wresult"])) 
    { 
     XmlDocument wresult = new XmlDocument(); 
     wresult.LoadXml(Request.Form["wresult"]); 
     XmlNodeList elemList = wresult.GetElementsByTagName("saml:Attribute"); 
     foreach (XmlNode node in elemList) 
     { 
      foreach (XmlAttribute attr in node.Attributes) 
      { 
       if (attr.Name.Equals("AttributeName") && attr.Value.Equals("emailaddress")) 
       { 
        XmlNode child = node.FirstChild; 
        evm.EmployeeEmailId = child.InnerText; 
       } 
      } 
     } 
    } 
    var emp = empModel.Get(evm.EmployeeEmailId); 
    if (condition) 
    { 
     return RedirectToAction("Index", "XYZ", new { area = "PQR" }); 
    } 
    return View("Test", evm) 
} 

die Daten anzuzeigen, die ich hier in der ViewBag bin speichern, sowie das Objekt mit der Ansicht zurückgegeben werden Rohlinge zurückkehren. Ich kann nicht verstehen, warum das so ist.

evm-Objekt wird während der XML-Verarbeitung gefüllt und es gibt einige DB-Aktionen, die dem Objekt weitere Details hinzufügen.

+0

Sie übergeben evm als Parameter, aber es ist nicht mit Daten –

+0

@DylanKilkenny Nr. evm wird während der XML-Verarbeitung gefüllt und es gibt einige DB-Aktionen, die dem Objekt weitere Details hinzufügen. Aber auch der ViewBag ist leer, was nicht möglich sein kann. –

+0

Request.Form ist eigentlich Daten von einem ADFS. –

Antwort

0

EmployeeViewModel evm = new EmployeeViewModel();

Dies ist das erste und letzte Mal, wenn Sie den Einsatz von EVM machen, bevor Sie versuchen, es zurückzugeben. Sie geben eine neue, leere Instanz EmployeeViewModel() zurück.

+0

nicht. evm wird während der XML-Verarbeitung gefüllt und es gibt einige DB-Aktionen, die dem Objekt weitere Details hinzufügen. Aber trotzdem ist der ViewBag auch leer, was nicht möglich sein kann –

+0

Könntest du uns die XML-Verarbeitung dann zeigen? –

+0

Ich habe den Code aktualisiert. Obwohl ich nicht glaube, dass das etwas mit der Frage zu tun hat. Weil der ViewBag vor der XML-Verarbeitung erscheint –

Verwandte Themen