Jak zaimplementować przyjazne urle w ASP.NET Core 3.1?

0

Jak zrobić przyjazne urle w ASP.NET Core 3.1? W ASP.NET MVC mogłem to zrobić tak:

               routes.MapRoute(
                    name: "lista-artykulow",
                    url: "Dashboard/lista-artykulow",
                    defaults: new { controller = "Article", action = "Index"});

W Core 3.1 interfejs IRouteBuilder nie ma parametru url tylko template i jest to teraz zrobione przez endpointy

0

o to chodzi? nad akcją (lub kontrolerem w sumie) [Route("fajny_link")]

0
WeiXiao napisał(a):

o to chodzi? nad akcją (lub kontrolerem w sumie) [Route("fajny_link")]

Właśnie nie chce za pomocą atrybutów, chciałbym mieć trasy zdefiniowane w osobym pliku.

0

możesz w metodzie ConfigureServices dodać services.AddMvc(options => options.EnableEndpointRouting = false); i wtedy masz

app.UseMvc(routes =>
{
    routes.MapRoute(

    );
});

Chyba że nie o to Ci chodziło.
A Ty napisz lepiej jak Ci się udało zainicjalizować bazę danych komendą dotnet ef? Bo tutaj właśnie o to pytam i nie wiem jak sobie poradzić z tym

0

Próbowałem już tak i się nie udało, bo IRouteBuilding w Corze 3.0 nie przyjmuje parametru Url, przez co nie moge przyjaznej nazwy zrobić.

            app.UseMvc(routes =>
            {
                routes.MapRoute(
                    name: "lista-artykulow",
                       template: "{controller}/{action}/{id}",                                                                //url: "Dashboard/lista-artykulow" - nie moge tak zrobić ;(
                    defaults: new { controller = "Article", action = "Index", productPage = "" });
            });

1 użytkowników online, w tym zalogowanych: 0, gości: 1