Мне нужно обновить несколько статических веб-страниц, и я хотел бы воспользоваться этим временем, чтобы воссоздать их с помощью ASP.NET Core (ASP.NET 5 с MVC 6) в Visual Studio 2015. Я хочу перестроить его с использованием новейших технологий Microsoft, чтобы сделать изменения в будущем.Изменение основного маршрута ASP.NET
Когда я запускаю проект на локальном хосте, сайт по умолчанию загружается нормально, но любая из связанных страниц ломается, потому что они маршрутизируются на контроллер /Home
по умолчанию. Кроме того, ни один из проектов jQuery, css или изображения найдены, когда MVC размещает эти страницы.
В файле Startup.cs, есть следующий метод:
// This method gets called by the runtime. Use this method to configure the HTTP request pipeline.
public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory)
{
loggerFactory.AddConsole(Configuration.GetSection("Logging"));
loggerFactory.AddDebug();
if (env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
app.UseDatabaseErrorPage();
app.UseBrowserLink();
}
else
{
app.UseExceptionHandler("/Home/Error");
}
app.UseStaticFiles();
app.UseIdentity();
// Add external authentication middleware below. To configure them please see http://go.microsoft.com/fwlink/?LinkID=532715
app.UseMvc(routes =>
{
routes.MapRoute(
name: "default",
template: "{controller=Home}/{action=Index}/{id?}");
});
}
Это, как он настроен работать из коробки.
Наша компания не хочет, чтобы /Home
(или что-то еще) застрял на URL всех своих веб-страниц.
Я создал различные IActionResult метод для разных страниц, но все они делают то же самое:
public IActionResult Index()
{
return View();
}
У нас также есть компании, которые ссылаются на наш сайт. Изменение структуры наших страниц приведет к тому, что другие компании остановятся и внесут изменения.
Как бы взять строку, такую как {controller}/{action}/{id?}
, и вернуть это типичную ссылку, например action.aspx?id=x
?
Альтернативно, есть ли способ сказать MVC не использовать шаблон для определенных страниц?
Прошу прощения, если это глупо базовый. Обычно я работаю над Windows Forms.
Я не уверен, что является преимуществом вашего упражнения, когда вы не хотите использовать базовую инфраструктуру. Если MVC не то, что вы хотите, я бы посоветовал придерживаться того, что у вас есть. – Saleem
@ Салим, с Microsoft становится все труднее, когда это не в MCV (в основном, в социальной интеграции). Если я никогда не начну изучать его части, я никогда не узнаю, как использовать его. – jp2code