Похоже, что вы используете
HttpContext.Current.Request.Url.Host
вместо HttpContext.Current.Request.Url
Для вашей локальной среды разработки вы получите localhost
, но когдавы развертываете это на каком-то веб-сервере, это будет корректно обновляться до URL размещенного веб-сервера.
В идеале у вас должен быть какой-то путь, который будет содержать строку запроса, а затем соответствующий код в загрузке страницы для проверки и использованияquerystring.
Пример:
<br/>"+HttpContext.Current.Request.Url.Host + @"/AccountValidate.aspx?id=SomeId"
Примечание. Вы также можете использовать HttpContext.Current.Request.Url, который перенаправит вас на текущую страницу с помощью строки запроса:
<br/>"+HttpContext.Current.Request.Url + "?id=SomeId"
А затем при загрузке страницы AccountValidate.aspx или текущей страницы:
string id = Convert.ToString(Request.QueryString["id"]);
if(!string.IsNullOrEmpty(id))
... //Code here to inform the user of successful activation
Важным моментом, который необходимо учитывать, является то, что вам потребуется какой-то способ узнать, какой пользователь нажал на ссылку активации.и, следовательно, строка запроса будет полезна.
Надеюсь, это поможет!