Статический файл и маршрутизация с конфликтом шаблонов звездочки

У меня есть проект .NET 8 спромежуточное программное обеспечение и все статические файлы обслуживаются без проблем.

После промежуточного программного обеспечения UseStaticFiles я определяю следующий минимальный API, который должен срабатывать всякий раз, когда появляется необработанный запрос.

      app.MapGet("{*UrlParts}", (string? UrlParts) =>
{
    return Results.Content($"<h1>Hello World</h1>", "text/html");
}).WithOrder(10000);

Этот минимальный API работает нормально, и всякий раз, когда я использую URL-адрес, который не обслуживается сервером, поскольку нет контроллера или представления для обработки этого запроса, я вижу содержимое Hello World.

Проблема в том, что когда я определяю эту конечную точку минимального API, статические файлы полностью игнорируются, и на экране появляется содержимое минимального API.

Минимальный API был определен после промежуточного программного обеспечения UseStaticFiles, и я также определил порядок минимального API на 10 000, чтобы он имел более низкий приоритет.

Я попробовал это с контроллерами и получил точно такой же результат. Я не могу заставить работать вместе статические файлы и контроллер/минимальный API.

Кто-нибудь знает, что Microsoft изменила в .net 8, потому что в предыдущих версиях это работало, по крайней мере, я помню, как использовал эту комбинацию.

0 ответов

Другие вопросы по тегам