Hi ramco1917,
Check this example. Now please take its reference and correct your code.
Class
public class Utility
{
public string ErrorMessage { get; set; }
}
public class UtilityHelper
{
public void SetErrorMessage(Controller controller, string message)
{
Utility util = new Utility
{
ErrorMessage = message
};
controller.TempData["Message"] = util;
}
public Utility GetErrorMessage(Controller controller)
{
Utility util = controller.TempData["Message"] as Utility;
return util;
}
public void RemoveErrorMessage(Controller controller)
{
controller.TempData.Remove("Message");
}
}
Controller
public class HomeController : Controller
{
// GET: Home
public ActionResult Index()
{
try
{
int i = int.Parse("test");
}
catch (Exception ex)
{
UtilityHelper utilityHelper = new UtilityHelper();
utilityHelper.SetErrorMessage(this, ex.Message);
}
return View();
}
[HttpPost]
public ActionResult Index(string name)
{
Utility utility = new UtilityHelper().GetErrorMessage(this);
if (utility != null)
{
ViewBag.ErrorMessage = utility.ErrorMessage;
new UtilityHelper().RemoveErrorMessage(this);
}
return View();
}
}
View
@{
Layout = null;
}
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width" />
<title>Index</title>
</head>
<body>
@using (Html.BeginForm("Index", "Home", FormMethod.Post))
{
<input type="text" id="txtName" name="name" />
<input type="submit" value="Get TempData Value" />
}
@if (ViewBag.ErrorMessage != null)
{
<script type="text/javascript">
window.onload = function () {
alert("@ViewBag.ErrorMessage");
};
</script>
}
</body>
</html>
Screenshot