Master Pages - Where's The Best Place To Store Custom "User" Object For The Duration Of Session

Jul 6, 2010

I have an ASP.NET application that needs to remember some info about a user (and what company they are from) across pages, within a session. I imagine this is a requirement of just about any ASP.NET application of a certain size. I've used a few different approaches over the years. In the past, I've passed around an id in querystring parameters like so: [URL] and then instantiated the object on each page (from the database). Another common way of doing it is storing my objects in session variables:

Session["User"] = currentUser; // store at login
User currentUser = (User)Session["User"]; // retrieve on some other page

which saves a trip to the DB, but I worry about memory used if the User object is complex and the site has many concurrent users. I have recently inherited an application that uses public properties on the master page, like this:

Master.theUser = currentUser; // store at login
User currentUser = Master.theUser; // retrieve on some other page

This saves the cast, and looks more readable to me I think, but I don't know if it's better or worse performance-wise. It also has some logic in the getter where if the private value is null, it tries to get it from the Session variable, though I'm not sure if that's never used (or used every get!?) or what. My latest idea is to use my page class. I have a custom page class derived from the standard System.Web.UI.Page base class. It includes objects like CurrentUser as public properties. This seems to work OK. I like it even better. But I really don't know what's going on under the covers. Can anyone give an opinion on which approach is better and why?

Update: I've done some checking use trace.axd and Trace.Write and it looks like neither the masterpage version nor the custom page class version "remember" the values between pages. The "get" methods have a line of code that checks if the User property is null, and if so, reads it from the session variable. This happens when a page accesses the property (Master.User or the derived class's this.User) for the first time on a given page, then subsequent requests can get the value (without going to the session variable). So thus far the best solution looks something like this:

public class MyPage : System.Web.UI.Page
{
private User user;
public User User
{
get
{
if (user == null)
{
user = (User)HttpContext.Current.Session["CurrentUser"]; //check if session[CurrentUser] is null here and log them out if so?
}
return user;
}
set
{
user = value;
HttpContext.Current.Session["CurrentUser"] = value;
}
}
}

Then on any webpage.aspx.cs, you can do something like this: UsernameTextBox.Text = User.FullName;

View 2 Replies


Similar Messages:

Visual Studio :: How To Work Only On Content Place Holder In VS2010 Without Seeing Master Pages

Jan 25, 2011

I am wondering if it's possible to work on Content Place Holder window without seeing master page template?

The second problem i've noticed is that when i try to add a table (1 row, 3 columns) to my content place holder and then try to adjust the width of those columns the whole layout of my page is getting messed up to the point that i have to use ctrl+x to go back to previous stage. The master page was very complicated but i finally got it to work and i don't understand why while i manipulate contentplaceholder the layout of the master page is being affected. (only when adjusting tables)I am new to Visual Studio and was wondering of any known standars in that matter.

View 4 Replies

Web Forms :: Nested Master Pages - Want To Know The Aspx Page Can place Contents Inside the Placeholder B

Feb 15, 2010

My application has a Parent master page, a child master page and an aspx page( inheriting the child master page)

> Parent master page has two content placeholders ( A and B)

>Child master page uses the content placeholder A and instills two more placeholders ( C and D)

>aspx page can now use C and D naturally

However i would like to know whether the aspx page can place contents inside the placeholder B( which was not used by child master page)

View 2 Replies

Security :: Place To Store The User Logged-in ID (info) For Later Checking And Use?

Feb 1, 2010

I have read the post at http://forums.asp.net/t/1403132.aspx regarding login control. Is there a place to store the User logged-in ID (info) for later checking and use? I don't need to use the session object. I don't need the page to expire. I don't need the user to use a page saved in the favoites.

View 3 Replies

Web Forms :: Session And Master Page Bug - Two Clients Are The Same Session Id On Pages?

Apr 26, 2010

I have a very interesting problem about Sessions and Master Pages. I designed a small CRM web application with master page. Users could enter their expenses with this application. I put a label on master page. If users login to this site, I changed this label text.
Label text is username. My problem is; when some users using this site at same time, usernames are conflict. For example; One client login and label which on the masterpage value is Ali. Another client login and label value is Ahmet. After that, If two clients process the same things on this site, Ahmet's label's value is changed to the value of Ali. I write it Session Id on URL. Firstly two clients take different Session ID when login to that page. When conflict occurs, two clients are the same Session Id that pages. I am using .NET Framework 3.5V. Is this ASP.NET bug ?

View 13 Replies

Custom Class To Store The Properties And To Pass Its Instance Across The Pages

May 12, 2010

I've a requirement where i need to pass some objects across the pages. So i created a custom class with all the properties required and created a instance of it and assigned all the properties appropriately. I then put that object in the session and took it the other page. The problem is that even when i set the properties values to the class it is coming as null. I set a breakpoint in the getter-setter and saw that the value itself is coming as null.

public class GetDataSetForReports
{
private Table m_aspTable;
private int m_reportID;
private string m_accountKey;
private string m_siteKey;
private string m_imUserName;
/// <summary>
/// Asp Table containing the filters
/// </summary>
public Table aspTable
{
get
{
return m_aspTable;
}
set
{
m_aspTable = aspTable;
}
}
/// <summary>
/// Report ID
/// </summary>
public int reportID
{
get
{
return m_reportID;
}
set
{
m_reportID = reportID;
}
}
/// <summary>
/// All the accounts selected
/// </summary>
public string accountKey
{
get
{
return m_accountKey;
}
set
{
m_accountKey = accountKey;
}
}
/// <summary>
/// All the sites selected
/// </summary>
public string siteKey
{
get
{
return m_siteKey;
}
set
{
m_siteKey = siteKey;
}
}
/// <summary>
/// Current User Name
/// </summary>
public string imUserName
{
get
{
return m_imUserName;
}
set
{
m_imUserName = imUserName;
}
}
}

This is how i'm creating an instance in the page1 and trying to get it in the page2. Page1 Code

//Add the objects to the GetDataSetForReports Class
GetDataSetForReports oGetDSForReports = new GetDataSetForReports();
oGetDSForReports.aspTable = aspTable;
oGetDSForReports.reportID = iReportID;
oGetDSForReports.accountKey = AccountKey;
oGetDSForReports.siteKey = Sitekey;
oGetDSForReports.imUserName = this.imUserName.ToString();

But the values are not getting set at all. The values are not passing to the class (to the setter) at all. Am i making any OOP blunder?

View 1 Replies

State Management :: Why Need Serialization To Store A Object In The Session

Apr 26, 2010

I have a object of Class named "Employee" I need to store the object in the session. what happens if i do not serialize the object and store in the session.

View 7 Replies

Web Forms :: How To Store Multiple Entries Of Properties On Custom Object In C#

Jan 12, 2010

I am creating a web service that returns the list of states. How do I create an object in C# in the web service that will return multiple values (of properties of an object). Currently, the way I am doing it, it only returns the last value pulled from the database. Do I need store an array of properties?

[code]....

View 5 Replies

Perform User Management (store User Info, Login , Logout Etc) Without Using Session Or Cookie?

Dec 1, 2010

Is it possible to perform user management (store user info, login , logout etc) without using session or cookie?

View 3 Replies

Security :: Store User Password In Custom Membership User

Aug 12, 2010

I have a custom membership user class and custom MembershipProvider working against database. Due to security reasons the user passwords are stored in the database as hashed values. So my procedure

public override bool ValidateUser(string username, string password) is
{
//select hashed password from db
return (EncodePassword(password) == dbpassword)
}
[code]....

View 4 Replies

Forms Data Controls :: Store Gridview Datatable In Session And Then Retrieve From Session And Store Database

Nov 11, 2010

Its related to datatable in gridview store in session and then session retrive and store to database. basically i am using gridview here creating new row for button click and these row adding untill user's last entry then submit all these entry to database. so i want to use session variable to store this data temporarily and after final entry user click on submit button and all data shold be save in db.

View 9 Replies

Custom Master Pages In WSS3.0 / SharePoint 2007 DOC TYPE?

Mar 23, 2011

I have a custom master page that I use in WSS3.0 (SharePoint 2007) and I am using a HTML 'DOC TYPE' which I am declaring at the top of the master page. The site all works very well with my master page apart from some of SharePoint controls which are acting a little funny, namely the People Picker for a People and Group field.If I remove the DOC TYPE declaration then the People Picker and other controls work perfectly and behave as they should but it sends some of my customisations/layout all over.

Before I spend a lot of time reviewing fixing the issues I get to my design without having the DOC TYPE declared, does anyone know if there is a certain DOC TYPE that is compatible with WSS3.0 / SharePoint 2007 and all of its features (i.e. People Picker Fields)?

View 1 Replies

MVC :: How To Store Active User Object

Apr 8, 2010

I'm not using the microsoft MembershipProvider system. I'm open to using bits and pieces of it.

In Web Forms I stored a lightweight User object in the Session Variable.

[Code]....

Then whenever I needed the full force of a user object I would ask my repository to return me the User object that matched (be it from the database or cache).

Where do I store my LightWeightUser object for the session's user in MVC, I see I still have access to Session, but is there a better place?

View 2 Replies

How To Store User ID In Session

Feb 15, 2011

When the user logs in, I want to store his userID in the session with

HttpContext.Current.Session["UserID"] = 2354; (this is just a hard-coded example)

Then, when I run a page method, if I do

var test = HttpContext.Current.Session["UserID"];

will the variable test hold the value I stored when he logged in?

If this is a correct way of doing it, how do I access the session when I receive a call from a page method? I want to put the test =... line in a page method to identify which user the request is coming from.

View 5 Replies

User Controls :: Automatically Reset User Session Without Showing Any Message When Using Master Page

May 7, 2015

URL.... Still there will be need of url in ajax method if i put javascript in site.master.cs . As what i have understood fromĀ  that mysite.master.cs will be like this :

protected void Page_Load(object sender, EventArgs e) {
try {
if (Session["Prefix"].ToString().Trim() == "sys_admin") {
UserNameMasterLabel.Text = Session["UserName"].ToString().Trim() + " (ADMIN)";

[code]....

And site.master will be like this :

And I have to put next method in DailyLog.aspx page ? like this

System.Web.Services.WebMethod(EnableSession = true)]
public static int RefreshSession() {
HttpContext.Current.Session["Name"] = "BSD";
Configuration config = WebConfigurationManager.OpenWebConfiguration("~/Web.Config");
SessionStateSection section = (SessionStateSection)config.GetSection("system.web/sessionState");
int timeout = (int)section.Timeout.TotalMinutes * 1000 * 60;
return timeout;
}

But I have several pages in my website , by doing the above story will it work for Builder.aspx ? or any other page rather than dailylog.aspx ?

View 1 Replies

MVC :: How To Store Persistent-user-session Information's

Aug 8, 2010

i have a list of fields that i would store for all the user session. I thought to create a class, insert the information in it and store the class in the session but i'm not sure this is the best way to do it (performances, etc). I should have a list of these informations that i can display in views, i can delete and i can update. How could i do this?

View 10 Replies

Session, FormsAuthenticationTicket, Store Data About The User?

Feb 1, 2011

I'm am building an web application that needs to be able to scale.We want to store, an connection string, an object that says what organization the user is working on right now and the identity of the user.

We could serialize down this and send through the userdata property in the FormsAuthenticationTicket, but that feels to not be the optimal solution, cause its is 4-5 strings of data that is unncessesary, but the main issue is that we are sending an encrypted connectionstring to the user which we dosent want to.

So what are our options?Can ASP.NET Cache be our solution?, can we couple the expiration of the asp.net cache and the formsauthenticationcookie?

View 2 Replies

How To Display The Duration It Took To Generate A Page In A Pages Footer

Jun 14, 2010

During debug builds I would like to show the duration it took, server side, to generate a page in the pages footer.

So for example if a page takes 250ms server side I would like that displayed in the footer, in debug builds. How can I achieve this in an ASP.NET MVC project?

View 2 Replies

Store Form Data In Tables For User Session?

Jan 5, 2010

I am using Visual Studio 2008.

I created a New Project ASP.NET Web Application.

I created a Textbox named VisitorName. The visitor puts in their name and it goes in VisitorName.Text

There is a Label that says "Which do you own?"

There is a RadioButtonList. It has Cat, Dog and None.

There is a button that says Add to list.

The button needs to add the results of the above items and put them in the list.

Now you keep adding people and their pets.

Once there are all entered you press send and I get the results for everyone entered during that session via email.

I have no database access and the information does not need to be stored in such a way.

I would like to use a datatable or datalist or something to that sort.

Oh and I would like the visitor to be able to click on a name in the table and edit the data using the form controls not in the datalist or datatable itself.

View 8 Replies

Web Forms :: Master Pages Ans Roles/user Security?

Feb 1, 2010

I have following situation: A web with a defaults.aspx & login.aspx 2 folders ADMIN & MASTER, in the ADMIN folder is a content page admin.aspx who's master is in the master folder.when I place, following web.config in the ADMIN folder he still is showing the admin.aspx for all users, when I place a new standalone aspx file in that directory the access is denied.Why is de content file not secured ? Must I secure the master file so do i need a new masterfile for each rol, user then...

in that directory<system.web>
<authorization>
<allow

[code]....

View 4 Replies

Web Forms :: Accessing A Public Property Of A Nested User Control In A Master Page From A Pages' User Control?

Sep 10, 2010

I've got a web site that has a master page and that master page (mpMaster that has a user control ucControl1) which has a sub user control (ucControl2), this user control has a property which accepts a value. Now, I have a page that uses the master page
and on this page I have another user control (ucPageControl), I need to find a way of setting the value in ucControl2 from ucPageControl. Is this possible at all?

View 5 Replies

State Management :: How To Store A Large Amount Of Data In User's Session

Sep 29, 2010

I need to store a large amount of data in user's session but I guess using Session Object is not the best way of doing that. Is there any other way around??? Remember I don't have small variables to store, I have large collections.

View 5 Replies

Web Forms :: Efficient Or Worthy Use Of User Controls And Master Pages?

Jul 12, 2010

I have taken over an application where the original developer has used an inordinate amount of user controls and master pages. There are multiple master pages all over the site, with user controls on top of user controls through out the site as well. Some of the user controls are reused, many are not. Would you deem this an efficient or worthy use of user controls and master pages? From my point of view it clutters the project and makes debugging a real chore.

View 2 Replies

Web Forms :: Data Sets - Use Master Pages Or User Controls?

Aug 20, 2010

I have a C# website developed with Visual Studio 2008 with a SQL backend. I have a top Navigation menu that has seven different tabs. I have a specific right bar content for each of the seven tabs. The content for the right bar is stored in a sql database and will be accessed using data sets. I believe that I have two ways to display the information with the data set...

1. User control - Create a User Control for each data set and then drop that on to the respective pages.

2. Master Pages - Create a Master Page for each of my seven sections, adding the data set to the respective Master Page.

Is there a preffered approach to achieve my goal? I am thinking Master Pages would be the most efficient but not certain. Is there another method I should consider?

View 1 Replies

Web Forms :: Master Pages Rendered User Controls Obsolete?

Nov 27, 2010

I am using a <a href=[URL], an open source e-commerce platform, for one of my projects, and I noticed that they use Master Pages as well as user controls. When I looked some of this up, some people made it appear as if Master Pages were intended to replace user controls. Is this true? In my opinion, if I were to start an ASP.NET app from scratch, I would think a Master Page would be enough, but I guess user controls could be utilized.

View 2 Replies







Copyrights 2005-15 www.BigResource.com, All rights reserved