没有数据返回查看

时间:2017-03-14 10:27:33

标签: c# asp.net-mvc adfs

的HomeController

[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)
}

我在ViewBag中存储的数据,以及随视图返回的对象都返回空白。我无法理解为什么会这样。

evm对象在XML Processing期间被填充,并且有一些DB动作恰好会向对象添加更多细节。

1 个答案:

答案 0 :(得分:0)

EmployeeViewModel evm = new EmployeeViewModel();

这是您在尝试返回之前第一次也是最后一次使用evm。您正在返回EmployeeViewModel()的新空白实例。