我是asp.net mvc的年轻开发人员,现在我正在尝试使用一个简单的计算器来计算用户输入的值。
这是我的mvc模型:
public class MoneyInstallments
{
[Required(ErrorMessage="The price is required.")]
public double price { get; set; }
[Required(ErrorMessage = "The duration is required.")]
public int duration { get; set; }
public double interestRate = 0.029;
public double total_interest { get; set; }
public double total_money { get; set; }
public double total_money_month { get; set; }
}
控制器:
public ActionResult Index()
{
return View();
}
[HttpPost]
public ActionResult Index(FormCollection frm)
{
string price_str = frm["price"].ToString();
string duration_str = frm["duration"].ToString();
double price;
double duration;
try
{
price = Convert.ToDouble(price_str);
duration = Convert.ToDouble(duration_str);
double interestRate = 0.029;
double total_interest = interestRate * duration;
double total_money = total_interest + price;
double total_money_month = total_money / duration;
}
catch (FormatException)
{
Response.Write("Unable to caculate"+price_str);
}
catch (OverflowException)
{
Response.Write("Unable to caculate" + price_str);
}
return View();
}
观点:
<% Html.BeginForm(); %>
<fieldset>
<legend>Money Information</legend>
<table>
<tr>
<td>Product Price:</td>
<td>:</td>
<td>
<%: Html.TextBoxFor(m => m.price, new { id = "price", name = "price"})%> <!-- user can type only 50 char of the string -->
<%: Html.ValidationMessageFor(m => m.price)%>
</td>
</tr>
<tr>
<td>Interest per month</td>
<td>:</td>
<td>2.9%</td>
</tr>
<tr>
<td>Duration</td>
<td>:</td>
<td>
<%: Html.TextBoxFor(m => m.duration, new {id="duration", name="duration"}) %>
<%: Html.ValidationMessageFor(m => m.duration) %>
</td>
</tr>
<tr>
<td colspan="3" align="right"><input type="submit" value="Calculate"id="btnCalculate"/></td>
</tr>
<tr>
<td>Monthly Pay is</td>
<td>:</td>
<td><div id="result"></div></td>
</tr>
</table>
</fieldset>
<% Html.EndForm(); %>
我想在我的视图中显示我的控制器中的total_money_month,但我知道这一点。任何人都可以告诉我。
答案 0 :(得分:1)
您可以使用控制器中的ViewBag将值传递给视图:
ViewBag.MonthlyTotal = total_money_month;
return View();
然后在您的视图中,您可以显示它:
@ViewBag.MonthlyTotal
修改强>
改为使用ViewData:
控制器:
ViewData["MonthlyTotal"] = total_money_month;
return View();
查看 -
<%= ViewData["MonthlyTotal"] %>