У меня есть одностраничное приложение, написанное на JavaScript, и я использую API истории HTML5 для обработки URL-адресов на стороне клиента. Это означает, что любые URL-адреса, отправленные на сервер, должны заставить сервер отображать одну и ту же страницу.Маршрутизация для одностраничного приложения в ASP.NET Core
В ASP.NET MVC 5 Я написал этот код, чтобы сделать это:
public class RouteConfig
{
public static void RegisterRoutes(RouteCollection routes)
{
// ...
routes.Add(new Route("{*path}", new MyRouteHandler()));
}
}
public class MyRouteHandler : IRouteHandler
{
public IHttpHandler GetHttpHandler(RequestContext requestContext)
{
return WebPageHttpHandler.CreateFromVirtualPath("~/index.cshtml");
}
}
Это работало очень хорошо. Независимо от того, какой URL-адрес получает сервер, он отображает index.cshtml. Обратите внимание, что я могу использовать файл .cshtml (в отличие от файла .html), что означает, что у меня может быть некоторый код C# для динамического изменения сценариев .js, добавления номеров версий в файлы .css и т. Д. Более того, мне не нужно было реализовывать контроллеры и представления и т. Д. Просто для рендеринга этого файла .cshtml.
Теперь мы переходим к вопросу: как вы это делаете в ASP.NET Core? Я читал документацию, но я не вижу, как визуализировать файл .cshtml без добавления классов контроллеров, просмотра папок и других ошибок.
Кто-нибудь знает эквивалентный код в ASP.NET Core?
с новым годом http://stackoverflow.com/questions/40358179/use-asp-net-core-without-mvc – ergen