Есть ли в ASP.NET способ сопоставить конкретную конечную точку со статическим html-файлом?C#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Есть ли в ASP.NET способ сопоставить конкретную конечную точку со статическим html-файлом?

Сообщение Anonymous »

Я хотел бы сопоставить пользовательскую конечную точку с html-файлом, например localhost:3000/page, который приведет вас к somePage.html. Я попробовал использовать app.UseFileServer, как описано в документации asp.net, для таких статических файлов

Код: Выделить всё

app.UseFileServer(new FileServerOptions
{
FileProvider = new PhysicalFileProvider(Path.Combine(Directory.GetCurrentDirectory(), @"wwwroot\somePage.html")),
RequestPath = "/page",
});
но я понял, что он предназначен для сопоставления каталога, а не отдельных файлов, и ничто другое на этой странице, похоже, не делает то, что я хочу, если только я это не пропустил.
я тоже думал об использовании такого перенаправления

Код: Выделить всё

app.MapGet("/page", () => Results.Redirect("/somePage.html"));
но я не хочу, чтобы URL-адрес был localhost:3000/somePage.html, я хочу, чтобы это был localhost:3000/page. поэтому я не могу это использовать.
Я решил, что могу просто прочитать файл в переменную и вернуть его вот так

Код: Выделить всё

string currDir = Directory.GetCurrentDirectory();
byte[] somePageHtml = File.ReadAllBytes(Path.Combine(currDir, @"wwwroot\somePage.html"));

app.MapGet("/page", () =>
{
return Results.File(somePageHtml, "text/html");
});
это работает, но мне интересно, есть ли способ сделать это в asp.net? также может ли мой метод вызвать проблемы в будущем? я не знаю, сколько и какого размера будут мои html-файлы, разве это плохая идея хранить их в памяти вот так?

Подробнее здесь: https://stackoverflow.com/questions/792 ... -html-file
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «C#»