Я разработчик рабочего стола. Но мне нужно научиться делать веб-разработку с использованием ASP.net Core. Итак, я сейчас задаю вопрос. Как правильно переписать URL моего сайта:
Это структура моего сайта
Вот как я могу добавить ссылку на мою страницу макета
<li><a asp-action="Index" asp-controller="Home">Home</a></li>
<li><a asp-action="Excel" asp-controller="Excel">Excel</a></li>
Что нужно сделать, это переписать этот URL
http://localhost:64419/Excel/Excel
В настоящее время я использую это промежуточное ПО
https://www.nuget.org/packages/Microsoft.AspNetCore.Rewrite/
А это мой код
// This method gets called by the runtime. Use this method to configure the HTTP request pipeline.
public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
app.UseDeveloperExceptionPage();
app.UseStatusCodePages();
app.UseStaticFiles();
app.UseMvc(routes =>
{
var rewrite = new RewriteOptions()
.AddRewrite(@"ExcelOnly", "Excel/Excel", skipRemainingRules: false);
app.UseRewriter(rewrite);
routes.MapRoute(
name: "default",
template: "{controller=Home}/{action=Index}"
);
routes.MapRoute(
name: "excel",
template: "{controller=Excel}/{action=Excel}"
);
});
}
Из-за кода выше я смог переписать URL в
http://localhost:64419/ExcelOnly
Просто введите ссылку в URL.
Но когда я нажал на ссылку на странице макета. Страница загружена, но она использует ссылку http://localhost:64419/Excel/Excel
, как правильно переписать URL.
Какие вещи мне нужно искать. Я не могу найти решение. Может быть, я использую неправильный термин поиска. Поэтому я решил спросить здесь.
Спасибо.
Обновление:
Мне удалось перенаправить страницу в URL, который я хочу
с этим кодом
var rewrite = new RewriteOptions()
.AddRedirect("Excel/Excel", "ExcelOnly")
.AddRewrite(@"ExcelOnly", "Excel/Excel", skipRemainingRules: false);
app.UseRewriter(rewrite);
Но это хорошая практика? Мне всегда нужны контроллер и действие в каждом моем перенаправлении. Поэтому, если я изменил имя действия, мне также нужно изменить перенаправление и переписать.
И еще одна проблема. При наведении мыши на ссылку
он показывает путь http://localhost:64419/Excel/Excel так как я могу спрятать этот материал?
Спасибо