Я создаю приложение, используя DotVVM Framework (версия 1.1.9), используя AspNet.Core и .NET Framework 4.7.1.
В какой-то момент мне нужно зарегистрировать IP-адрес удаленного пользователя. Есть ли способ получить его внутри ViewModel? Я видел много уроков
В ViewModelBase есть свойство Context
, которое имеет свойство HttpContext
, но это некоторый встроенный интерфейс IHttpContext
, а не правильный HttpContext
.
Однако я обнаружил, что могу привести существующее IHttpContext
к DotvvmHttpContext
, которое содержит свойство OriginalContext
, которое, похоже, действительно является тем, которое я искал.
var remoteAddr = ((DotvvmHttpContext)Context.HttpContext).OriginalContext.Connection.RemoteIpAddress;
Таким образом, вопрос заключается в том, является ли это «безопасным» подходом или же существует какой-либо другой «правильный» способ прямого доступа к исходному HttpContext AspNet или к удаленному IP-адресу?