C# Data Caching And How To Invalidate
Mar 17, 2011
My web application is using the asp.net cache object to store data from the database. I am looking for an elegant to invalidate cache objects but haven't come up with anything elegant yet. It is easy to invalidate a single record or a list of all records in a single table, by keeping track of their cache keys. However I may have any number of lists of subsets of a table's data. I would like to invalidate only the cache records of the lists that contain a particular record, when that record changes. I don't want to have to invalidate all the lists of data for that table if only one of the lists contain that record.
View 1 Replies
Similar Messages:
Jun 3, 2010
I have the following .NET VB code to set and read objects in cache on a per user basis (i.e. a bit like session)
'' Public Shared Sub CacheSet(ByVal Key As String, ByVal Value As Object)
Dim userID As String = HttpContext.Current.User.Identity.Name
HttpContext.Current.Cache(Key & "_" & userID) = Value
End Sub
Public Shared Function CacheGet(ByVal Key As Object)
Dim returnData As Object = Nothing
Dim userID As String = HttpContext.Current.User.Identity.Name
returnData = HttpContext.Current.Cache(Key & "_" & userID)
Return returnData
End Function
I use these functions to hold user data that I don't want to access the DB for all the time. However, when the data is updated, I want the cached item to be removed so it get created again.
How do I make an Item I set disappear or set it to NOTHING or NULL?
View 1 Replies
May 3, 2010
i've got a website that uses OutputCache attribute to cache pages. Works great.
Now, I'm in the middle of R&D'ing scaling up this site to be in a web farm. Along with the usual suspects for webfarm pain ... I've noticed (pretty quickly/obviously) that the OutputCache from Server_A doesn't invalidate the OutputCache from Server_B .. if a try and invalidate a single server's OutputCache. This makes total sense -> how can S_A 'tell' S_B to invalidate when they are physically 2 seperate machines, etc?
So - what are our options?
Velocity? I understand this will move the caching to a different layer .. which means that the final result (output) will always be required to be determined .. as opposed to the OutputCache whic remembers the final output content (yes, varby gives different versions, etc.. which is totally fine). So even though the poco or business objects are all sync'd, there's still that last rendering effort required (even if it's tiny .. compared to the effort to generate/sync business objects).
View 2 Replies
Dec 17, 2010
I read few xml files from a location and cache them using Http context cache. Anytime the xml files changes i have to do a IISReset to view the latest changes.
I use this
System.Web.HttpContext.Current.Cache
I have to use the caching as i don't want to read all the xml files all the time. i read it once and caches them for a day. They get reset whenever apppool recyles or anyone manualy do a IISReset.
Is there anyway in asp.net to invalidate the cache if someones changes the xml file.
View 1 Replies
Feb 19, 2010
I want to restrict my application user to Navigate his previously visited page, How can we achieve this?
Somebody says we have to disable Back Button etc.
One of the possible solution is keep the below code in Page_Load event
[Code]....
View 5 Replies
Feb 4, 2011
It's great to be able to output cache child actions, but how do I invalidate that cache?
I've been trying to use [Code]....
View 3 Replies
Jun 14, 2010
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.
View 2 Replies
May 15, 2010
how to implement caching in wcf service using System.Web.Caching
View 2 Replies
Mar 18, 2010
Is it possible to do data caching in client-side in asp.net and c#.net iam planning to cache a dataset.
if so provide a sample?
View 2 Replies
Dec 2, 2010
We store the location information in a table. Numbers of records are over four thousand. This table structure is self-recursive. In our web project, we use dropdownlist control to populate all these locations. We got performance slow problem. So googling about Caching, we consider to use Data Caching with Sql Dependency. However, not found yet a full-covered sample in .NET 2.0 and SQL Server 2005 or 2008.
View 1 Replies
Jan 28, 2011
I have a reporting page with a gridview and a calendar. When the user loads the page, the default date is today and when he clicks on a date in the calendar control, it loads the reporting data for that day. Each user has a different report and the data is between 300-500 rows per day. At the moment, I have a linq query that returns the data for a day in the form of a list. Given the relatively small amount of data per query, I'd like to store the result of the query in the session so that I can do the paging and sorting from the session, without going back to the data store.
What I'm looking to do is a list of lists so that when the query loads, the data is saved until the session times out. For instance, if the user selects 4-5 different dates, each of these queries is saved in the session and then if he clicks on one of those dates again, a function first checks to see if the data is in the session: GetQueryFromSession( DateTime TheDate). I'm stuck on this. How do you create a list of lists that works with the session object.
View 2 Replies
Mar 31, 2011
What's the best way to cache web site user data in asp.net 4.0? I have a table of user settings that track all kinds of user or session specific stuff like the state of UI elements (open/closed), preferences, whether some dialog has been dismissed, and so on. Since these don't change very often (for each user, anyway) but are looked up frequently it seems sensible to cache them. What's the best way? These are the options I've identified...
Store them in HttpContext.Current.Session directly (e.g. Session["setting_name"]) Store them in HttpContext.Current.Cache Use a global static dictionary, e.g. static ConcurrentDictionary<string,string> where the key is a unique userID + setting name value Store a dictionary object for each session in Session or Cache What's the most sensible way to do this? How does Session differ from Cache from a practical standpoint? Would it ever make sense to store a dictionary as a single session/cache object versus just adding lots of values directly? I would think lookups might be faster, but updates would be slower since I'd have to re-store the entire dictionary when it changed.
What problems or benefits might there be to using a global static cache? Seems like this would be the fastest, but I'd have to manage the size. I could just flush it periodically if it hits a certain size, or keep a cross reference queue and remove things oldest first when it gets to a certain size. Does this make any sense or is it just trying too hard?
View 2 Replies
May 12, 2010
I have built my first MVC solution and used the repository pattern for retrieving/inserting/updating my database.
I am now in the process of refactoring and I've noticed that a lot of (in fact all) the methods within my repository are hitting the database everytime. This seems overkill and what I'd ideally like is to do is 'cache' the main data object e.g. 'GetAllAdverts' from the database and to then query against this cached object for things like 'FindAdvert(id), AddAdvert(), DeleteAdvert() etc..'
I'd also need to consider updating/deleting/adding records to this cache object and the database.
What is the best apporoach for something like this?
My knowledge of this type of things is minimal and really looking for advice/guidance/tutorial to point me in the right direction.
View 2 Replies
Aug 20, 2010
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?
View 5 Replies
Feb 16, 2011
We are developing a multi-language web application with ASP.NET MVC 2 and Fluent NHibernate.Our platform will be multi-language. But just static text will be multi-language. Groups pages depends on community content whatever they use. Like Facebook.We decide to keep all language string in database. And load language when application starts.
View 1 Replies
Jul 17, 2010
I am using page caching in one form they retrive some rows from data base for example i put caching time to 5 minutes, in between 5 min suppose the data has modified in server then it should be reflected in my form how to achieve this problem
View 1 Replies
Sep 17, 2010
My requirement is to call WCF web service from ASP.NET code behind and pass some data for example:void Add(int x, int y);Result of the operation should be somehow stored within WCF web service (member variable).
Later user should be able to call double Equals();and get the result of the operation. Of course since it's an open website many non-authenticated users can open the ASP.NET page and call the web service.
Alternatively Add method can return "key" that can be used to get result back,
[code]...
View 1 Replies
Jul 26, 2010
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.
View 2 Replies
May 11, 2010
Background of what I have implmented so far:
I've used datagrid view to show a list on records on page, the list contains huge number of records so paging was required. Since the amount of data was huge it was not advisable to bind the grid with complete data. So, I used custom paging and tweaked the sql statements to get page wise data. Now whenever user clicks next or previous data for current page is fetched from the database and gridview is binded with that much data only.
Now I had to add a checkbox column to the grid so that user can select multiple items on multiple pages and perform an operation (for example send email to selected people in the list). I achieved this by making a template column with checkbox control and keeping a boolean column in the datatable which is binded to the gridview. I've also kept a collection selected checboxes so that the state is maintained on every postback.
I've also used ajax so that user cannot see postback happeneing. Everything works just perfect.Here comes the problem:
Now say I have 5 pages of data to be displayed. I select 3 people from first page and move to next page, this will cause fresh databinding and previous data will be lost.Now I go on and select 3 more people from page 2Finally press the send mail button What is expected here is that the mail should be sent to 6 people but details of only 3 people are available because grid is rebinded.
What is the best way to cach data of selected rows in this case. The number of columns is around 20 out of which I show only 10 columns on screen and others are kept hidden. The values of hidden columns are used while sending the emails.
View 5 Replies
Jan 19, 2010
I've this Gridview of tasks a Hyperlink TemplateField that takes the user to another page where he can accept/reject[buttons] the very task , on clicking accept/reject[buttons] the page redirect the user again to the tasks Gridview , unfortunately , the same task is still there unless if the user manually Press F5[Refresh] I tried the following nothing worked
1- EnableViewState ="false"
2- In the ObjectDataSource , EnableCaching ="false"
3-i tried to use Ajax but it gives me a whole lots of errors from the webconfig ,my website is working ,I can't stop users from accessing my site in order to wrestle with Ajax
the approach I am taking on developing my site is to work in my local machine when I am finished with my changes I literally Copy/Paste the new aspx/aspx.vb overwriting the old file with the new one , this approach is working fine but it causes the server to a bit slow esp. in the first time after change, is there a more Professional way?
View 5 Replies
Apr 26, 2012
I have webpage with three dropdown boxes on left side (Country Dropdownbox, State Dropdownbox, City Dropdownbox) and these dropdown works independently or one box will depend on another. I have a gridview in right side and the results will be binding to the gridiew by selecting the left side dropdown boxes.
I need to implement the caching technology here because the web page loading very slow due to large amount of records. For example if i select any country from the first dropdown box and the other two boxes are default (Selected text is "ALL"), then It should display records related to selected country in gridview.
Further if I select country and state from the respective boxes then it should display the related records in the gridview like so on. Now i want do some caching functionality to improve the performance. I tried caching the Dataset while binding to gridview but in my case the results will not be static becasue user every time will select different options from different dropdown boxes and results will come based on the selected options.
View 1 Replies
Feb 8, 2010
I'm doing a tutorial on custom paging. It makes sense to use this for a high volume site. I haven't worked with caching yet but that also seems very useful for a high volume site. Are these two things typically used in conjunction with each other?
Can someone offer some guidance on when to use or not to use these together?
View 1 Replies
Feb 17, 2011
I am trying to speed up a Gridview on my page that reads 8,000 records using an AccessDataSource. So I am trying to implement caching. I have used the information given here: [URL] but it has made no difference in the response time. Can anyone direct me on this? Is there something you have to specify in the gridview (besides the datasource). Would it work if I went to SQL Server?
This is my AccessDataSource code. You can see the 3 relevant lines starting 6 lines from the top.
[Code]....
View 1 Replies
Jun 17, 2010
I have 2 gridviews on a webpage that are fully editable. I also have a button, that when clicked, runs some SQL in codebehind to insert new rows into a data table. The gridview should then update with the latest results of the SQL query, which is does.
Then the user clicks on to the next page to do the next thing.The problem is, when they go back to the first page, they're still seeing the old, non-updated data. I've run the SQL from the page manually on the server, and the new data is there, but the GridView doesn't want to pull it.
View 2 Replies
Feb 10, 2011
i have a usercontrol called navigationmenu whose data is static but varies with loged in1.empID 2.empType 3 Country my question is how can i cache the data of usercontrol based upon combination of these 3 parameters
View 9 Replies