сервер, я имею в виду, что знапуская сервер, он запускается на хосте localhost, порт 7400, фулл адресс https localhost:7400
можно ли как раз получить этот https localhost:7400 ?
пожалуй просто расскажу чего я хочу добиться. Это метод который будет отправлять на почту ссылку на эндпоинт, который будет принимать как параметр токен, который будет декодироваться и в базе данных у юзера, найденого по айди из токена менять поле EmailConfirm на true (пока там ссылка на гугл), То есть эндпоинт выглядеть будет вот так: /api/auth/token/токен_в_котором_лежит_айди. Так вот, мне же надо на почту отправить ссылку именно на тот хост, на котором расположен сервер, вот так $"{хост_на_котором_расположен_сервер}/api/auth/token/токен_в_котором_лежит_айди" Как получить хост? Из вариантов пока что просто вписать в json и вытаскивать
По сути ни как. Приложение не может знать как dns прописан для ip:port вашего сервера. Но можно попытать счастье и дернуть HttpContext.Current.Request.Url.GetLeftPart(UriPartial.Authority)
Ну если это Asp то как-то так возможно по идее https://stackoverflow.com/questions/38437005/how-to-get-current-url-in-view-in-asp-net-core-1-0
ну значит только в json записать?
Ничего не понятно. Если есть request значит в нем есть Host, чем он вам не подходит?
ему надо ссылку для реквеста сформировать, чтобы инвитэйшн линк высылать
А еще. А еще. У тебя тут лишняя стейт машина. Единственный эвэйт метода, который так же ретурнит просто таск. )) расточительство.
я не знаю что такое стейт машина. Вроде как если async/await не будет, то выполнение пойдет далее в сервисе, где я использую mailService
А если будет, то тоже
Ожидание будет в mailService, но таску mailService нужно же запустить и ожидать, это будет кодом выше. Так что разницы никакой
так я запускаю метод вот так await _mailService.SendToMail
ну и что нужно сделать чтобы у меня другой сервис ждал мой mailService?
Обсуждают сегодня