2017-03-14 3 views
0

に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処理中に入力され、オブジェクトに詳細を追加するDBアクションがいくつかあります。

+0

あなたはパラメータとしてevmを渡していますが、データには何も入力されていません。 –

+0

@DylanKilkenny no。 XML処理中にevmが生成され、オブジェクトに詳細を追加するDBアクションがいくつかあります。しかし、それでも、ViewBagも空であり、不可能です。 –

+0

Request.Formは実際にはADFSのデータです。 –

答えて

0

EmployeeViewModel evm = new EmployeeViewModel();

これは、あなたがそれを返すようにしようとする前に、EVMを活用する最初と最後の時間です。 EmployeeViewModel()の新しい空白のインスタンスが返されます。

+0

いいえ。 XML処理中にevmが生成され、オブジェクトに詳細を追加するDBアクションがいくつかあります。しかし、たとえそうであっても、ViewBagも空であり、不可能です。 –

+0

XML処理を見せてもらえますか? –

+0

コードを更新しました。しかし、私はそれが質問とは関係ないと思う。 ViewBagはXML処理の前に表示されるため –

関連する問題