The name 'ViewData' does not exist in the current context

Maven picture Maven · Oct 12, 2011 · Viewed 14k times · Source

I am working over my first application over MVC3 and still kind of a newbie in it:
I’m trying to success my ViewData[] over a master page because its contains a message that would be used over every page, but when I’m trying to access that it says:

CS0103: The name 'ViewData' does not exist in the current context

var msg = ViewData["msg"] as string;
        //var msg = ViewBag.msg as string;
        if (msg != null)
        {
            Response.Write (msg);
        } else if (msg == null)
        {
            Response.Write("");
        }

I am not sure whether I’m doing something wrong or it’s just not possible to access ViewData[] over my MasterPage. Help please!

Answer

SLaks picture SLaks · Oct 12, 2011

You need to set your master page to inherit System.Web.Mvc.ViewMasterPage.