HttpContext GetEndpoint по измененному пути запроса .net 5C#

Место общения программистов C#
Ответить
Гость
 HttpContext GetEndpoint по измененному пути запроса .net 5

Сообщение Гость »

Я пытаюсь создать промежуточное программное обеспечение для обработки кода страны в URL-адресе.
Имеющийся у меня код отлично подходит для удаления кода страны, поэтому он направляется в правильную конечную точку в конвейере MVC. >
У меня проблема в том, что мне нужно выполнить некоторые действия в зависимости от того, имеет ли конечная точка определенный атрибут или нет.
Я вижу, что HttpContext есть метод GetEndpoint, и это именно то, что мне нужно.
Когда код страны находится в URL-адресе (mysite.com/us/ главная/Индекс),
GetEndpoint возвращает значение null.
Но если я введу сайт без кода страны в URL-адресе (mysite.com/home/Index), то GetEndpoint сработает.< /p>
Как я могу использовать метод GetEndpoint() для измененного URL-адреса запроса?
Это другое свойство HttpContext мне нужно переодеться?
public async Task InvokeAsync(HttpContext httpContext)
{
// mysite.com/us/home/Index
var currentAddress = httpContext.Request.Path;

// mysite.com/home/Index
httpContext.Request.Path = ExtractCountryCodeFromUrl(currentAddress);

var endpoint = httpContext.GetEndpoint(); // null

var hasMyAttribute = endPoint.Metadata.GetMetadata();
// Do something...

await next(httpContext);
}


Подробнее здесь: https://stackoverflow.com/questions/675 ... path-net-5
Ответить

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

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

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

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

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