Не совсем понятно, в чем проблема, основанная на предоставленном вами коде, но, поскольку вы упоминаете, что в вашем действии ResetPassword
оно отсутствует в вашем действии Login
, я предполагаю, что вы не правильносохраняя значение.
TempData
это просто временные данные.Как только к нему обращаются, он удаляется.Поэтому, когда вы устанавливаете b
здесь с его значением, это все - оно ушло.Если затем вы попытаетесь получить к нему доступ в другом действии позже или даже просто в представлении, которое возвращает это действие, оно будет иметь значение null.
Если вам нужно получить значение, но также сохранить его для дальнейшего использования, вынужно использовать TempData.Peek
:
var b = TempData.Peek("test");