Asp.net core .net core一页验证多个表单

Asp.net core .net core一页验证多个表单,asp.net-core,.net-core,Asp.net Core,.net Core,我需要使.net核心页面有两种形式。我已经完成了所有工作,但现在我正在努力处理asp验证摘要,因为我在页面上有两个相同的元素,每当我在表单验证(服务器端)中出错时,它都会在两个地方打印错误 如何区分我单击的表单的这些错误 <form asp-controller="Account" asp-action="Login" asp-route-returnurl="@ViewData["ReturnUrl"]" id="loginForm" class="sky-form" method="

我需要使.net核心页面有两种形式。我已经完成了所有工作,但现在我正在努力处理asp验证摘要,因为我在页面上有两个相同的元素,每当我在表单验证(服务器端)中出错时,它都会在两个地方打印错误

如何区分我单击的表单的这些错误

 <form asp-controller="Account" asp-action="Login" asp-route-returnurl="@ViewData["ReturnUrl"]" id="loginForm" class="sky-form" method="post">

LOGIN INPUTS

<div asp-validation-summary="All" class="text-danger"></div>

</form>

<form asp-controller="Account" asp-action="Register" asp-route-returnurl="@ViewData["ReturnUrl"]" id="registerForm" class="sky-form" method="post">

REGISTER INPUTS

 <div asp-validation-summary="All" class="text-danger"></div>

 </form>

登录输入
寄存器输入

我没有找到合适的解决方案,但在控制器方法中有一个ViewData解决方案:

    public async Task<IActionResult> Login(LoginViewModel model, string returnUrl = null)
    {
        ViewData["requestForm"] = "login";
public异步任务登录(LoginViewModel模型,字符串returnUrl=null)
{
ViewData[“requestForm”]=“登录”;

公共异步任务寄存器(RegisterViewModel模型,字符串returnUrl=null) { ViewData[“requestForm”]=“register”; 然后修改登录表单:

            <form asp-controller="Account" asp-action="Login" asp-route-returnurl="@ViewData["ReturnUrl"]" id="loginForm" class="sky-form" method="post"> 
                @if(((string)ViewData["requestForm"])=="login")
                {
                    <div asp-validation-summary="All" class="text-danger "></div>
                }

            </form>

@if(((字符串)ViewData[“requestForm”])=“login”)
{
}
注册表格:

            <form asp-controller="Account" asp-action="Register" asp-route-returnurl="@ViewData["ReturnUrl"]" id="registerForm" class="sky-form" method="post">
                @if(((string)ViewData["requestForm"])=="register")
                {
                    <div asp-validation-summary="All" class="text-danger "></div>
                }

            </form>

@如果(((字符串)ViewData[“requestForm”])=“register”)
{
}

控制器代码是什么样子的?大致上?是同一个处理程序同时处理帐户/登录和帐户/注册吗?嗨…我忘了说:我使用了jquery.validate,在代码中,它确保它在同一个控制器中执行不同的操作。我有完全相同的问题,你找到解决方案了吗?
            <form asp-controller="Account" asp-action="Register" asp-route-returnurl="@ViewData["ReturnUrl"]" id="registerForm" class="sky-form" method="post">
                @if(((string)ViewData["requestForm"])=="register")
                {
                    <div asp-validation-summary="All" class="text-danger "></div>
                }

            </form>