возвращает ответ, который говорит браузеру соответственно изменить отображаемый URL-адрес
Это не так, как работают HTTP-запросы / ответы.Клиент запрашивает URL, сервер не отвечает URL.Но он может ответить различными ответами.Например, если вы хотите, чтобы клиент отправил новый запрос на определенный URL, это перенаправление:
return Redirect(Url.Content("~/"));
Однако, если вы действительно хотите, чтобы ответьте content :
return View(vm);
Тогда вашему content потребуется сделать что-то, что изменит URL.Это будет в коде на стороне клиента .Я не ожидал бы, что это будет на 100% надежно, и меня не удивит, если некоторые браузеры (или некоторые настройки браузера) сочтут это потенциальной фальсификацией безопасности и не допустят ее.
Между этими двумя подходами наиболее распространенным является первый.Но операция, которую вы показываете в своем коде, кажется, не гарантирует этого.Если вы намереваетесь показать информацию о пользователе (или любую запись в данных) из корня сайта, не требуя, чтобы клиент перешел на URL, который его запрашивает, возможно, вы хотите, чтобы корень вашего сайта сделал запрос AJAX длявместо данных.