2013-07-25 28 views
2

我试图展现在里面查看标签中的数据,该数据是从另一种观点为目的,我已经做了这样的返回值从的ActionResult转移到另一种观点认为

来,这是我的模型是

namespace MvcSampleApplication.Models 
{ 
    public class products 
    { 
     [Required] 
     [Display(Name = "Textbox1")] 
     public string EnteredValue { get; set; } 
    }  
    public class category 
    { 
     [Display(Name = "Label1")] 
     public string lablvalue { get; set; }   
    } 
} 

,这是我的控制器

namespace MvcSampleApplication.Controllers 
{ 
    public class EnterValueController : Controller 
    {   
     public ActionResult Index() 
     { 
      return View(); 
     } 
     public ActionResult Valuesadd(MvcSampleApplication.Models.products model) 
     { 
      return View(model);    
     } 
     [HttpPost] 
     public ActionResult SubmitValue(MvcSampleApplication.Models.products model) 
     { 
      ViewData["logindata"] = model.EnteredValue;  
      return View("submittedvalues");    
     }     
     public ActionResult submittedvalues() 
     { 
      var model = new MvcSampleApplication.Models.category(); 
      string data = ViewData["logindata"] != null ? ViewData["logindata"].ToString() : ""; 
      model.lablvalue = data; 
      return View(model);    
     } 
    } 
} 

,这我认为

@model MvcSampleApplication.Models.category 
@{ 
    ViewBag.Title = "submittedvalues"; 
} 
<h2>submittedvalues</h2> 
@using (Html.BeginForm()) 
{ 
    <div> 
     <fieldset> 
      <legend> 
       Lable value 
      </legend>     
      @Html.DisplayFor(s=>s.lablvalue)   
     </fieldset> 
    </div> 
} 

当我按下提交按钮它就会去查看(submittedvalues.cshtml),但不显示结果 非常感谢....

+0

我需要在这里写@ Html.DisplayFor(s => s.lablvalue)来显示价值在标签.. –

回答

6

更改您的代码,而不是return View()使用RedirectToAction将其重定向到另一个行动。另请注意,我用TempData代替ViewData

[HttpPost] 
public ActionResult SubmitValue(MvcSampleApplication.Models.products model) 
{ 
    TempData["logindata"] = model.EnteredValue;  
    return RedirectToAction("submittedvalues");    
}     
public ActionResult submittedvalues() 
{ 
    var model = new MvcSampleApplication.Models.category(); 
    string data = string.IsNullOrEmpty(TempData["logindata"]) ? string.Empty : TempData["logindata"].ToString(); 
    model.lablvalue = data; 
    return View(model);    
} 
+0

非常感谢......它的工作现在.. –

0

这是因为这样的:

return View("submittedvalues"); 

立即呈现所谓的 “submittedvalues.cshtml”

视图,以便验证码:

public ActionResult submittedvalues() 
     { 
      var model = new MvcSampleApplication.Models.category(); 
      string data = ViewData["logindata"] != null ? ViewData["logindata"].ToString() : ""; 
      model.lablvalue = data; 
      return View(model);    
     } 
+0

非常感谢......对你的支持 –