+1 за указание на контроллер вместо маршрута

отаю над интранет-приложением MVC 3 (проверка подлинности Windows). Приложение должно отображать страницу профиля пользователя, как только пользователь входит в систему. Чтобы сделать это, имя пользователя вошедшего в систему пользователя должно быть передано в качестве параметра маршрута в следующем маршруте в Global.asax.cs.

routes.MapRoute(
    "Initial",
    "{controller}/{action}/{emailAlias}", // URL with parameters
    new { controller = "Home", action = "Home", userId = **<USERNAME>**}
);

Здесь я использовал несколько альтернатив.

Сначала я использовалEnvironment.Username, Который хорошо работает в разработке. Но не после публикации. Потому что тогдаEnvironment.Username возвращает имя пула приложений, в котором выполняется приложение. Как описаноВот.

Controller.User.Identity.Name используется для получения желаемого имени пользователя в контроллерах, хорошо работает до и после публикации. Но его нельзя использовать в контексте Global.asax.cs.

System.Web.HttpContext.Current.User.Identity.Name дает нулевую ссылку.

System.Security.Principal.WindowsIdentity.GetCurrent().Name работает так же, какEnvironment.Username

Я уверен, что сейчас легко понять, что я нуб. Может быть, я пропустил что-то очевидное. Если это так, пожалуйста, укажите это или, пожалуйста, сообщите мне о простом решении, спасибо заранее.

Ответы на вопрос(1)

Ваш ответ на вопрос