I am creating a web application using ASP.NET MVC 4.
I want to display the user’s nickname on all of pages, so I have to load it in _layout.cshtml.
Please note that I’m storing user’s nickname manually. (In my own database and my own tables.)
I can add user’s User name by Membership.GetUser().UserName, but I want to load his nickname from database and show it in _layout.cshtml.
How to do that?
I would advise you to upon logging in, store the username in a session variable (which is done by accessing the Session object, which implements a key=value pair architecture allowing you to store and retrieve your data at will). It’s a drag on performance to have to make a database call for EVERY page that loads, and a single nickname string variable in session won’t take up that much space on your server.
As far as loading the variable you could use the code posted by Vahid, but I would recommend you if your site is still in its infancy to take the extra time to learn and implement Entity Framework. It is cleaner, easier and Microsoft is really pushing data connection management in that direction.