State Management :: Using Caching While Storing Variables?
Jun 1, 2010
I've begun building a bit of a framework that I wouldnt mind working with. The idea is to create a framework that makes it even easier to create CMS addons (So basically a CMS framework).
One of my goals with this project, was having all modules made within the framework automatically support version without any extra coding.
More to the point, the way that I started building this, many pieces (Lots had to do with the versioning system) became interlinked. A version Object in the code related directly to a Module Object and vice versa, therefore the class definitions for each relate to eac otherh. (So having only the Module object, i could access the versioning object and all of its properties). My issue with this is of course what happens if i have both the module and versioning objects in my code simoultaneously, resulting in having not just duplicates of the data within the code, but (perhaps) infinite amounts, killing the app.
So what im wondering is, what if my modules properties where stored within the cache? Ie if i had the Module object, and it had the property ID -- Then the data for ID would be stored in the cache within the module object. Referencing the value simply retrieves the value from the cache if it exists there, and the SQL database if it doesnt. This way, all instances of the module that may be running at the same time will have access to the same information, at the same time, and hopefully causing it to use less space in total.
I would then add a function, so that if a developer was loading a rarely used module, or dident want to occupy cache space with large amounts of data, then they could just call a Dispose function that would remove the data from the cache.
Does this method sound reasonable? I know this probably isnt what the cache is designed for -- but I cant think of any other way to do this without having an infinite loop of objects referring to each other, or causing huge discrepencies from having different instances of objects referencing values that should be the same, but arent because they are technically different instances.
I have a page with a number of user controls, In one of my user controls I have a button event. I turn on output cache for the user control that has the button and vary by control using the ID property of a hidden field control in the user control. whenever I turn on the output cache my button event doesn't fire.
We have a scenario where we need to store large tables of data on Session in asp.net page. on a highlevel we have to store following data
1> A table (table 1) with 1000 rows and 8 to 10 columns.
2> A table(table 2) with 500 rows and 8 to 10 columns (actually user can add the data from table 1 to table 2, so as user keeps on adding from table 1 we remove the data and put it in table 2)
3> Another table(table 3) with 1000-1200 rows each having 3 columns.
We are having a webfarm, so we need to store it in either SateServer of Oracle DB,What would be the performance implications of storing such huge data on the server.
One more thing is at any point of time max of 70 -80 people will be accessing our website, so will this cause any performance degradation?
I am working on an asp.net website using C#. The site deals with orders and therefore order lines. I would like to store the order in memory whilst it is being populated (with order lines) and once it gets submitted write it to a database.
The above logic has been implemented, but sometimes when accessing session state or storing a variable in it information gets lost. Take note that the web server is running a dual-core processor. I am also using the in proc session state server.
I tried changing over to using the out proc session state server (asp.net state service), but it requires serialization. Since the order and orderlines are actually linq to sql classes, the entitysets and entityref's fail to serialize.
Does anyone know the reason why session state loses information occasionally and possibly how to eliminate the problem?
I have an issue with the object datasouce caching. Users are seeing other peoples cached records when they click next on the grid. It looks as though the caching is shared among users. Bascially when the user get to the screen they have date filters so they can further filter down the records. If another user it in at the same time and the first user hits next they get the second users filtered records.
Does ASP.NET provide any sort of out-of-process cache server, similar to the way the session server works? If not, what would you recommend for caching in a Web Garden scenario?
I want to cache a page with specific value of specific querystring using SqlDependency.
I found with VaryByParam = "ProductId,CategoryId" I can do that but I want to cache the page only if ProductId is 10 and / OR CategoryId = 15 for example.
I have a large SQL Database in the server from which I can create a dataset of about 10000 rows. My question is about caching this data. Which type of data caching should I choose (Server side or Client side)? Which one will provide better performance?
Currently I have my data cached in Datasets in a static class. I was talking to my cousin's husband, who works as a C# developer for our local Telecom company.
Basically, I'm pretty new to ASP.NET and although to me having cached data in a static class makes sense to me, when I talked to him about it, he said there might be a problem when the site goes live, as on a web server more than one instance of the class may be created.
He did say this was a theory, and it was an area he didn't know an awful lot about, so I thought I'd ask some of you ASP.NET gurus to see if what I've done is totally wrong or not.
I have a List (Table) of Data that I display in a Grid View. For now lets just assume I have a List<CustomObject> cList that I give to my GridView.DataSource(). I have a AJAX call (from a DropDown on the Page) that enables me to filter the Data in the GridView. This works. For now, I re-fetch the data from the DB, and filter it.I am wondering if there is a more efficient way of doing this i.e. to save the data the first time I get it, and then display a filtered list of that data when requested. I attempted to save the data as private variable on the Page, but it seems that Page gets recreated for the AJAX call. My attempt looks like:
[Code]....
[Code]....
This page is accessible anonymously - so there is no User Profile or something like that. P.S. I put my code in the Insert Code Dialog, but it does not seem to format it correctly. Sorry about that.
I am developing questionare web site, where user has to answer around 55 questions. Its basically a check / uncheck option. So when user submit I store the value in DB.
The issue I am facing is if user selectes all the option, cookie value is lost. I see only 50 records can be stored (Request.Cookies.AllKeys)
Even the SessionID value is lost.Any solution / work around.
I need to store in the client side only. because if the user choose all options and do not submit. The values can be stored in the cookie and later point if he comes back we can read and give to him
anybody tell me how can i check session is storing value or not?
actully i am using first time session variable to store datatable gridview but do't know that is saving value or not actully in my grid when user inser first row entry then it is ok when click on new row button then new row generate but previous row value lost.
I have written a property globally on page load i am storing setting some value into that property but on button click i am not able to retrieve the data. Is there any alternate way to save the data other than viewstate or sessionstate. Ex:
Partial Class _Default Inherits System.Web.UI.Page Private s As String Public Property Test() As String Get Return s End Get Set(ByVal value As String) s = value End Set End Property Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load If Not IsPostBack Then s = "Test" End If End Sub Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click s = "Champ" End Sub Protected Sub Button2_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button2.Click MsgBox(s.ToString()) End Sub End Class
I've created a blog for my first asp.net website. Ive got a blog class as my object. Ive created a number of methods to access my blog articles using LINQ to SQL.
Each method returns a list of objects ready to be used in the appropriate web user control.
In my head i need to cache these lists of objects that are returned, but need to know the best way of approaching this. So i have come up with two possible options
1: Make one method to retrieve all blogs in a list<Blog> and cache this list to be used for all other methods or
2: Cache only the required methods that really need it.
I am using this to store my user information for authentication. I'd like to know where this is actually being stored? I know that people suggest to store the Session state in SQL. Is this necessary for the Cache as well?
in my web appliaction there are many pages which use data from backend . and all these pages run according user login in application.every user gat different data according data availability for particular user .And data is not static for user in database it can be update ,delete,and may be new data inserted for user, frequently . in this case roundtrip for data on sql serverv increased and it cause of load on sql server. in this csae i want to implement caching on my pages. But I am not able to do this because i have no idea about how implement caching on the basis of particular user data .
I am storing Datatable in Session variable in my project. Is it good practise to do so? The datatable has 20 fields and can run into 1000+ records. Will it hamper my application performance?
I am having two aspx pages(Page1.aspx,Page2.aspx).I am stioring values in Session in Page1.aspx and retriving the same values from Page2.aspx.But if the session value is null I am getting an error as 'Object reference not set to an instance of an object.'Here is my code..