Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

asp-controller and asp-action attributes not working

Would anyone know what I am missing, why those asp-controller and asp-action tags are not working for me. I am implementing a project in ASP.NET MVC Core.

This does not fire:

<a asp-controller="App" asp-action="Trips" class="btn btn-lg btn-success">Go to Trips</a> 

Razor works fine:

@Html.ActionLink("Go to Trips", "Trips", "App", new object { }, new { @class = "btn btn-lg btn-success" }) 

Do I need to configure some service for that to work. And also, which way is preferred? Razor is pretty popular with MVC, are those asp- tags a new, better way?

like image 431
lucas Avatar asked Aug 05 '16 20:08

lucas


2 Answers

After a little bit of digging I found that asp-controller and asp-action attributes are called anchor tag helpers, and are part of the

Microsoft.AspNetCore.Mvc.TagHelpers namespace

Apparently it is an alternative to using Razor. I was able to resolve the issue by creating '_ViewImports.cshtml' and adding the below into the file:

@addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers 

Once done that, anchor tag helpers were recognized and button start working as anticipated.

like image 143
lucas Avatar answered Sep 28 '22 09:09

lucas


When working with Areas I had to copy _ViewImport to the new Area\MyArea\Views

like image 35
André Farina Avatar answered Sep 28 '22 08:09

André Farina