【发布时间】:2019-02-03 14:21:30
【问题描述】:
在 ASP.NET Core 视图和 Razor 页面中我们可以使用:
public class LoginModel
{
[BindProperty]
public bool DisplayCaptcha { get; set; }
// OR
[ViewData]
public bool DisplayCaptcha { get; set; }
// OR
[TempData]
public bool DisplayCaptcha { get; set; }
}
在视图/页面/控制器之间共享数据... 但是什么时候使用它们呢?
在我的例子中,它是一个简单的登录页面,当用户设置错误的密码时,我会显示一个验证码。
在表单帖子中,我将属性设置为 true (DisplayCaptcha = true) 并使用验证码呈现页面:
@if (Model.DisplayCaptcha)
{
<div class="captcha-header">
...
</div>
}
这工作正常,但我有点混淆属性应该是什么类型,或者即使我应该使用任何类型。
【问题讨论】: