1

假设我有一个注册页面。这是一个简单的视图,只有“名称”和“电子邮件”输入框。当用户提交他们的详细信息时,控制器将在数据库中创建用户,然后返回(相同的)视图。

现在正在返回相同的视图,我希望视图检测到该过程是否成功。即我需要将一些东西传回视图,让它显示一些稍微不同的东西。该页面本质上是相同的,但我有一些文本“成功注册”而不是输入框。

一种方法:

ViewBag.RegistrationWasSuccessful = True

然后在视图中简单地检查该变量是否为真,然后显示“成功”文本。

另一种方法是将其添加到模型中:

Function Registration(ByVal model as RegistrationView) As ActionResult
    If ModelState.IsValid Then
        model.RegistrationWasSuccessful = True
    End If
    Return View(model)
End Function

再次检查该变量是否为真。

检查表单是否成功的最佳方法是什么?上面的方法看起来有点难看。

4

1 回答 1

3

如果您正在寻找根据流程成功/失败显示成功或失败消息的最简洁、最简单的方法,我建议改为向您的 ViewBag 添加一条消息并在您的视图中发布成功或失败消息。

在你的控制器中

if processSuccess == true
   ViewBag.RegistrationMessage = "Success"
else 
   ViewBag.RegistrationMessage = "Failure"

在您的视图显示中

<span> @ViewBag.RegistrationMessage </span>
于 2013-03-07T01:21:50.767 回答