Modelando e validando um formulário com vários envios

Estou tentando descobrir a maneira correta de modelar e validar um formulário com várias tags de formulário e vários botões de envio usando o ASP.Net Core 2. O que eu tenho é um formulário no qual um usuário pode digitar seu nome de usuário e senha e entrar OU digite seu nome, sobrenome e número de célula e inscreva-se. Aqui está o meu modelo:

public class Landing
{
    [Required]
    public string Username { get; set; }
    [Required]
    public string Password { get; set; }
    [Required]
    public string FirstName { get; set; }
    [Required]
    public string LastName { get; set; }
    [Required]
    public string CellNumber { get; set; }
}

Aqui está o meu código de exibição de navalha relevante:

@model MyApp.ViewModels.Landing

<form method="post">
    <div>
        <input asp-for="Username" type="text" />
    </div>
    <div>
        <input asp-for="Password" type="password" />
    </div>
    <div>
        <input type="submit" value="Sign In" />
    </div>
</form>

<form method="post">
    <div>
        <input asp-for="FirstName" type="text" />
    </div>
    <div>
        <input asp-for="LastName" type="text" />
    </div>
    <div>
        <input asp-for="CellNumber" type="text" />
    </div>
    <div>
        <input type="submit" value="Sign Up" />
    </div>
</form>

Agora, o problema que encontro é com a minha validação. Porque todos os meus campos estão marcados com o[Required]&nbsp;atributo, quando envio o formulário usando o botão enviar, ele está validando todos os 5 campos. O que eu quero fazer é validarUserName&nbsp;ePassword&nbsp;somente se o primeiro botão de envio for pressionado OU validadoFirstName, LastName&nbsp;eCellNumber&nbsp;somente se o segundo botão de envio for pressionado. Como posso conseguir isso?