There is a method to pass the entire query string to another page
using the a tag in .NET Core 3.1? But I get an error, it could not
create the href property using this
Based on your shared code and description its not very clear that what exactly you are trying to achieve.
Usually, asp-route attribute is used for creating a URL linking directly to a named route but for that your syntax were not correct. If you would like generate href than you should do as following:
<a asp-route="QueryStringValue" class="btn btn-success">Verified All</a>

Explanation:
public class QueyStringController : Controller
{
[Route("QueyString/VerifiedAll", Name="QueryStringValue")]
public IActionResult VerifiedAll()
{
return View();
}
}
As you can see I have used QueryStringValue as route name which I am passing in asp-route in order to generate <a> or href tag.
But if you do otherwise, you would encounter following error.

How to pass query string in other page:
Actually, using numerous way, you can pass query string to another page on of the way you can implement is from controller redirection.
public IActionResult PassQueryString()
{
return RedirectToAction("Index", "Home", new { test="MyQueryStringvalue"});
}
Above, redirection, will call Index action of Home controller and will pass Test query string with MyQueryStringvalue as value. You can now extract the value from your HttpContext.
<a asp-controller="QueyString" asp-action="VerifiedAll" asp-route-id="@Context.Request.QueryString.Value"
class="btn btn-manage">Verified All</a>

Output:

Note: You can have a look at our official document here for more details.