2011-03-08 107 views
0

我很難用viewbag將數據傳遞給我的模型。如何將數據從viewbag傳遞到CSHTML中的模型

下面是一些例子來啓發你:

@model UCPBEscheatment.Models.aspnet_Membership 
@{ 
    ViewBag.Title = "AnswerForgotPassword"; 
} 

<script src="@Url.Content("~/Scripts/jquery.validate.min.js")" type="text/javascript"></script> 
<script src="@Url.Content("~/Scripts/jquery.validate.unobtrusive.min.js")" type="text/javascript"></script> 

@using (Html.BeginForm()) 
{ 
<em style="font-size:small">@Html.ValidationSummary(true, "Forgot Password was unsuccessful. Please correct the errors and try again.")</em> 
<fieldset style="background-color:#f0f0f0"> 
<legend> Forgot Password </legend> 
<br /> 
• Second step: <em style="color:Teal"> Answer your secret question</em> 
<br /><br /> 
<b> Secret Question:</b> @ViewBag.question 
<br /><br /> 
<b> Secret Answer: </b>@Html.EditorFor(a => a.PasswordAnswer) 
<br /><br />   
@{ 

     INPUT CODE HERE TO PASS A VALUE TO THE MODEL USING VIEWBAG LIKE: 

    ex. 
     @MODEL.USERID = VIEWBAG.USERID 

} 
<input type="submit" value="Submit" /> 


</fieldset> 


} 
+0

你的問題是什麼? – 2011-03-08 03:18:07

+0

我的問題是如何能夠我的值直接傳遞給MODEL 像我@ Model.PasswordAnswer = ViewBag.answer 我wwant明確地傳送或可變聲明到我的模型 – sgolek 2011-03-08 03:19:51

回答

2

它不工作的方式。您無法分配到正在帖子中返回的模型。我建議將用戶的id添加到表單url並使用url上的id來查找需要驗證密碼的用戶。

@using (Html.BeginForm("validatepassword","account",new { id = ViewBag.UserID })) 
{ 
    ... 
} 

或者更好的是,設置用戶ID的模型,並從那裏用它代替ViewBag,但仍使用它的URL發送回。

+0

OMG http://stackoverflow.com/users/12950/tvanfosson非常感謝,真的幫助我hahaha 現在我可以去做我忘記的密碼模塊 – sgolek 2011-03-08 04:56:05

相關問題