【问题标题】:Nancy access model state in view视图中的 Nancy 访问模型状态
【发布时间】:2017-01-11 12:45:21
【问题描述】:

现在我正在使用 nancy 数据注释验证模型,但是如果模型无效,我不太确定如何访问视图中的模型状态(使用超级简单视图引擎),例如:

           Post("/register", async args =>
        {
            ViewBag.ReturnUrl = Request.Query.returnUrl;
            ViewBag.LoginProviders = _signInManager.GetExternalAuthenticationSchemes().ToList();

            var model = this.BindAndValidate<RegisterViewModel>();

            if (ModelValidationResult.IsValid)
            {
                var user = new ApplicationUser { UserName = model.Email, Email = model.Email };
                var result = await _userManager.CreateAsync(user, model.Password);

                if (result.Succeeded)
                {
                    var adminUsers = await _userManager.GetUsersInRoleAsync("admin");
                    if (!adminUsers.Any())
                    {
                        if (!await _roleManager.RoleExistsAsync("admin"))
                        {
                            var roleResult = await _roleManager.CreateAsync(new IdentityRole
                            {
                                Name = "admin",
                                NormalizedRoleName = "admin"
                            });

                            if (roleResult.Succeeded)
                            {
                                await _userManager.AddToRoleAsync(user, "admin");
                            }
                        }
                        else
                        {
                            await _userManager.AddToRoleAsync(user, "admin");
                        }
                    }

                    await _signInManager.SignInAsync(user, isPersistent: false);
                    Logger.LogInformation(3, "User created a new account with password.");

                    return Response.AsRedirect("~/");
                }
            }

            return View["register.html", model];
        });

如果我在验证模型后将用户返回到注册视图,我该如何访问那里的错误?目前似乎没有任何用于输出错误的辅助方法,但我认为会有某种字典可用于访问视图中的错误。在 Nancy 的回帖中输出错误的具体标准是什么?

【问题讨论】:

    标签: c# nancy modelstate


    【解决方案1】:

    您还需要将ModelValidationResult 传递回视图,而不仅仅是model

    【讨论】:

    • 我明白了,我只是将其更改为 ajax 请求并以这种方式将模型验证结果发回......
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-05-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多