Home All Groups Group Topic Archive Search About

asp.net Session vs Database Queries

Author
28 Nov 2007 10:08 PM
DNB
I would like to know what you guys think is the best way  to access data:
Asp.Net session vs. Database Queries.

In our application we are using asp.net tree view to display hierarchical
data and when user clicks on particular node it brings up totally different
page with all the asp.net controls dynamically generated.


Example:
Tree view Control is as follow:
Student1
Student2
Student3
Student4
.......
......
.....
.....
Student 75

Now I have 2 options:
1) Now when user click on any node (i.e. Node Student2) another page will be
displayed and all the data related to that will be accesses from SQL server
using SQL Queries

2) OR Should all the data be accessed initially loaded into Session
Variable before building Tree View and when user access Node Student 2, just
get it from Session Variable.

Thanks
DNB

Author
29 Nov 2007 5:27 AM
Mr. Arnold
Show quote
"DNB" <i*@ii.com> wrote in message
news:OzIsosgMIHA.5208@TK2MSFTNGP04.phx.gbl...
>I would like to know what you guys think is the best way  to access data:
> Asp.Net session vs. Database Queries.
>
> In our application we are using asp.net tree view to display hierarchical
> data and when user clicks on particular node it brings up totally
> different page with all the asp.net controls dynamically generated.
>
>
> Example:
> Tree view Control is as follow:
> Student1
> Student2
> Student3
> Student4
> ......
> .....
> ....
> ....
> Student 75
>
> Now I have 2 options:
> 1) Now when user click on any node (i.e. Node Student2) another page will
> be displayed and all the data related to that will be accesses from SQL
> server using SQL Queries
>
> 2) OR Should all the data be accessed initially loaded into Session
> Variable before building Tree View and when user access Node Student 2,
> just get it from Session Variable.
>

You can use SQL Server as a state server, which you set that up through the
Web.config, you set up SQL server to be a state server with the .Net Utility
that does configuration. Then you can make a serialized Session object to
hold you session object in session with the data or variables serialized and
saved and retrieved to/from SQL Server. .Net will keep track and take care
of what needs to be done by itself to keep all session state. All you do is
set and get the object.

Look it up use Google and find out how to keep session state using SQL
server as a state server.
Author
29 Nov 2007 4:20 PM
Cowboy (Gregory A. Beamer)
The issue here, as I read it, is whether to store junk into Session, not how
to do session state. Regardless of whether you are using SQL Server or State
Server (or local for that matter), throwing items into session is not
generally the wisest method. For Prefetch, session is really not a good
option, as you are loading up tons of objects you will never use. One could
prefetch into ViewState, but if there are lots of students on a page, you
get a very heavy page. Once again, for information you most likely will not
use (maybe one or two records). With ViewState, you might get away with it
on a fast connection, but there is really no need.

Better to fetch from your persistant data store as needed.

--
Gregory A. Beamer
MVP, MCP: +I, SE, SD, DBA

*************************************************
Show quote
| Think outside the box!
|
*************************************************
"Mr. Arnold" <MR. Arn***@Arnold.com> wrote in message
news:ekKrbikMIHA.1296@TK2MSFTNGP02.phx.gbl...
>
> "DNB" <i*@ii.com> wrote in message
> news:OzIsosgMIHA.5208@TK2MSFTNGP04.phx.gbl...
>>I would like to know what you guys think is the best way  to access data:
>> Asp.Net session vs. Database Queries.
>>
>> In our application we are using asp.net tree view to display hierarchical
>> data and when user clicks on particular node it brings up totally
>> different page with all the asp.net controls dynamically generated.
>>
>>
>> Example:
>> Tree view Control is as follow:
>> Student1
>> Student2
>> Student3
>> Student4
>> ......
>> .....
>> ....
>> ....
>> Student 75
>>
>> Now I have 2 options:
>> 1) Now when user click on any node (i.e. Node Student2) another page will
>> be displayed and all the data related to that will be accesses from SQL
>> server using SQL Queries
>>
>> 2) OR Should all the data be accessed initially loaded into Session
>> Variable before building Tree View and when user access Node Student 2,
>> just get it from Session Variable.
>>
>
> You can use SQL Server as a state server, which you set that up through
> the Web.config, you set up SQL server to be a state server with the .Net
> Utility that does configuration. Then you can make a serialized Session
> object to hold you session object in session with the data or variables
> serialized and saved and retrieved to/from SQL Server. .Net will keep
> track and take care of what needs to be done by itself to keep all session
> state. All you do is set and get the object.
>
> Look it up use Google and find out how to keep session state using SQL
> server as a state server.
>
>
Author
29 Nov 2007 8:04 AM
Som Nath Shukla
use datbase queries it will faster baecause . when u use session object  u
have to create session for every student.  and this will seprate for every
user . so memory use at sever will increase which will degrade ur performace.
so better to use dbdbase query. it may happen  a user it wisting ur site and
only clicking one node so ur query will fired only once. but when u use
seesion it will create each variable for every user.
for better performace u can also use cahing  .

Show quote
"DNB" wrote:

> I would like to know what you guys think is the best way  to access data:
> Asp.Net session vs. Database Queries.
>
> In our application we are using asp.net tree view to display hierarchical
> data and when user clicks on particular node it brings up totally different
> page with all the asp.net controls dynamically generated.
>
>
> Example:
> Tree view Control is as follow:
> Student1
> Student2
> Student3
> Student4
> .......
> ......
> .....
> .....
> Student 75
>
> Now I have 2 options:
> 1) Now when user click on any node (i.e. Node Student2) another page will be
> displayed and all the data related to that will be accesses from SQL server
> using SQL Queries
>
> 2) OR Should all the data be accessed initially loaded into Session
> Variable before building Tree View and when user access Node Student 2, just
> get it from Session Variable.
>
> Thanks
> DNB
>
>
>
Author
29 Nov 2007 12:15 PM
Peter Bromberg [C# MVP]
You should consider (if Possible) getting all the data for a particular
user's session and store it in Session State. Unless the amount of data that
is needed is very large, this is the most efficient way of handling a
multiuser application and avoids having to constantly query the database for
what may be the same data. If you have data that is the same across multiple
users, you can save memory by storing that data in either Cache or
Application state.

Also, consider asking questions like this in the asp.net newsgroup as it is
not really a C# language related question.

--Peter
"Inside every large program, there is a small program trying to get out."
http://www.eggheadcafe.com
http://petesbloggerama.blogspot.com
http://www.blogmetafinder.com



Show quote
"DNB" wrote:

> I would like to know what you guys think is the best way  to access data:
> Asp.Net session vs. Database Queries.
>
> In our application we are using asp.net tree view to display hierarchical
> data and when user clicks on particular node it brings up totally different
> page with all the asp.net controls dynamically generated.
>
>
> Example:
> Tree view Control is as follow:
> Student1
> Student2
> Student3
> Student4
> .......
> ......
> .....
> .....
> Student 75
>
> Now I have 2 options:
> 1) Now when user click on any node (i.e. Node Student2) another page will be
> displayed and all the data related to that will be accesses from SQL server
> using SQL Queries
>
> 2) OR Should all the data be accessed initially loaded into Session
> Variable before building Tree View and when user access Node Student 2, just
> get it from Session Variable.
>
> Thanks
> DNB
>
>
>
Author
29 Nov 2007 4:21 PM
Cowboy (Gregory A. Beamer)
"Peter Bromberg [C# MVP]" <pbromberg@yahoo.NoSpamMaam.com> wrote in message
news:B2B0117A-5B52-4A9E-9DFD-ECC1F72F8D28@microsoft.com...
> You should consider (if Possible) getting all the data for a particular
> user's session and store it in Session State.

As long as that is the information that is grabbed, sure. As I read this, he
was talking about prefetching the entire list of students when the initial
page was hit and storing that in session. Not a wise idea.

--
Gregory A. Beamer
MVP, MCP: +I, SE, SD, DBA

*************************************************
Show quote
| Think outside the box!
|
*************************************************
Author
29 Nov 2007 4:17 PM
Cowboy (Gregory A. Beamer)
ANSWERED in ASP.NET group.

--
Gregory A. Beamer
MVP, MCP: +I, SE, SD, DBA

*************************************************
Show quote
| Think outside the box!
|
*************************************************
"DNB" <i*@ii.com> wrote in message
news:OzIsosgMIHA.5208@TK2MSFTNGP04.phx.gbl...
>I would like to know what you guys think is the best way  to access data:
> Asp.Net session vs. Database Queries.
>
> In our application we are using asp.net tree view to display hierarchical
> data and when user clicks on particular node it brings up totally
> different page with all the asp.net controls dynamically generated.
>
>
> Example:
> Tree view Control is as follow:
> Student1
> Student2
> Student3
> Student4
> ......
> .....
> ....
> ....
> Student 75
>
> Now I have 2 options:
> 1) Now when user click on any node (i.e. Node Student2) another page will
> be displayed and all the data related to that will be accesses from SQL
> server using SQL Queries
>
> 2) OR Should all the data be accessed initially loaded into Session
> Variable before building Tree View and when user access Node Student 2,
> just get it from Session Variable.
>
> Thanks
> DNB
>

AddThis Social Bookmark Button