【发布时间】:2018-09-20 13:44:59
【问题描述】:
这里我使用的是简单的应用程序,点击发送按钮我将执行索引 httppost 操作。但是由于某种原因,如果我的验证码不正确,那么我正在尝试加载相同的视图。我正在传递表单集合,所以我的名字和姓氏不会被抹去。请建议我如何坚持我的价值观。
[HttpPost]
public ActionResult Index(FormCollection dataColl)
{
ColComments datgrp = new ColComments();
datgrp.fname = dataColl[0].ToString();
datgrp.lname = dataColl[1].ToString();
if (!this.IsCaptchaValid(""))
{
ViewBag.Classname = "alert alert-warning";
ViewBag.ErrorMessage = "Incorrect captcha answer.";
}
else
{
ViewBag.ErrorMessage = "OKAY";
return RedirectToAction("Landing", "Account");
}
return View(dataColl);
}
索引视图。
@using CaptchaMvc.HtmlHelpers
@model CaptchaTestApp.Models.ColComments
@{
ViewBag.Title = "Home Page";
}
<div class="jumbotron">
<h1>ASP.NET</h1>
<p class="lead">ASP.NET is a free web framework for building great Web sites and Web applications using HTML, CSS and JavaScript.</p>
<p><a href="http://asp.net" class="btn btn-primary btn-lg">Learn more »</a></p>
</div>
<div>
@using (Html.BeginForm())
{
<div> @Html.ValidationSummary(true)</div>
<fieldset>
<legend>ColComments</legend>
<div class="editor-label">
@Html.LabelFor(model => model.fname)
</div>
<div class="editor-field">
@Html.EditorFor(model => model.fname)
@Html.ValidationMessageFor(model => model.fname)
</div>
<div class="editor-label">
@Html.LabelFor(model => model.lname)
</div>
<div class="editor-field">
@Html.EditorFor(model => model.lname)
@Html.ValidationMessageFor(model => model.lname)
</div>
</fieldset>
<table>
<tr>
<td colspan="3">
@Html.Captcha(8, "_captchaCnt")
</td>
</tr>
</table>
<p>
<input type="submit" value="Send" />
</p>
}
</div>
【问题讨论】:
标签: asp.net-mvc model-view-controller