Turvenn.no
Webutvikler kurs ASP.NET, C#, CSS mm.

WebRessurs.no - Webprogrammering og ressurs innen ASP, ASP.NET, PHP, SQL, HTML, CSS, Javascript, XML, C#, VB, Flash  mm.

Brukernavn: 
Passord:

Registrèr deg Glemt passord?
Logg deg inn




  ASP.net (199)
  ASP 3.0 (111)
  PHP (30)
  HTML (66)
  SQL (89)
  CSS (46)
  XML (7)
  JavaScript (78)
  Diverse kode (13)


  Programmering (22)
  System og drift (15)
  Trafikk og inntekt (11)
  Guider og tips (22)
  Nyttig lesestoff (23)
  Web forum (604)
  Link galleri (565)


  ASP.NET kurs(5)
  CSS kurs (2)
  JQuery kurs (2)


  Øk trafikken (8)
  Facebook App. (4)
  Microsoft CEO (6)


  Server & web
  Internett & epost
  Systemverktøy
  Sikkerhet
  Fildeling
  Lyd & media
  Diverse software


  Domenesalg
  Metagenerator
  Websikre farger
  WebMail


  Bli medlem!
  Siste innlegg
  Gjestebok
  Tips en venn
  Kontakt oss
  Forsiden




Kode Artikler
Linker


Mål internetthastigheten din.


Legge inn og hente Collection fra Cache med Cache Dependency

av Øyvind A. Isaksen
 
Her viser vi et komplett kodeeksempel på hvordan man kan hente ut eller legge inn en Collection fra Cache med Cache Dependency.

Summary: Add collection to cache with cache dependency.


---------------------------------------------------
Collection, henter ut eller legger inn i cache
---------------------------------------------------

//Return all Articles for current site
public static ArticleCollection GetArticles()
{

string cacheKey = string.Format("Articles");

if (Webressurs.Data.Cache.GetCache(cacheKey) == null)
{
// Innholdet ligger ikke i cache
ArticleCollection ArticleCollection = new ArticleCollection();
Article Article = null;

SqlConnection Conn = new SqlConnection(ConnString);
SqlCommand Cmd = new SqlCommand("spGetArticles", Conn);
Cmd.CommandType = CommandType.StoredProcedure;
Cmd.Connection.Open();
SqlDataReader dr = Cmd.ExecuteReader();

while (dr.Read())
{
Article = new Article();
Article.Id = Int16.Parse(dr["Id"].ToString());
Article.Name = dr["Name"].ToString();
Article.Description = dr["Description"].ToString();
ArticleCollection.Add(Article);
}
dr.Close();

Cmd.Connection.Close();
Cmd.Dispose();
Conn.Dispose();

//Legger innholdet i Cache med Cache Dependency (for aktuell SiteId)
//Cache kan senere bli slettet ved å kjøre følgende kode:
//Cache["Articles_[SiteId]"] = DateTime.Now.Ticks;

string cacheDependency = string.Format("Articles_{0}", CurrentSite.Id.ToString());
Webressurs.Data.Cache.SetCache(cacheKey, ArticleCollection, "3600", cacheDependency);

return ArticleCollection;
}
else
{
//Innholdet finnes i Cache og henter det derfra
ArticleCollection ArticleCollection = (ArticleCollection)Webressurs.Data.Cache.GetCache(cacheKey);
return ArticleCollection;
}
}


---------------------------------------------------
Cache klasse
---------------------------------------------------

namespace Webressurs.Data
{
public class Cache
{

public static void SetCache(string cacheKey, object value, int cacheTime, string dependencyObjectKey)
{
// Ved å sette feks dependencyObjectKey = "article" vil "article" være en dependency key.
// Ønsker man å slette all cache med dependency key = "article" gjør man bare som følger:
// cache["article"] = DateTime.Now.Ticks;
// Skal det gjøres i Class Library (Contenthandler) gjøres det slik:
// System.Web.HttpRuntime.Cache["article"] = DateTime.Now.Ticks;

System.Web.Caching.Cache cache = System.Web.HttpRuntime.Cache;
CacheDependency dep = null;

if (cache["GlobalCache"] == null)
{
System.Web.HttpRuntime.Cache["GlobalCache"] = DateTime.Now.Ticks;
}

if (dependencyObjectKey != null)
{
if (cache[dependencyObjectKey] == null)
{
cache[dependencyObjectKey] = DateTime.Now.Ticks;
}

//Du kan ha så mange dependency objekter du vil.
//Skriver de bare kommaseparert inne i {} (F.eks { dependencyObjektKey, ”MittCacheObjekt2”, ”MittCacheObjekt3” } )
dep = new CacheDependency(null, new string[] { dependencyObjectKey, "GlobalCache" });
}
cache.Insert(cacheKey, value, dep, DateTime.MaxValue, new TimeSpan(0, 0, cacheTime));
}

public static void SetCache(string cacheKey, string value, int cacheTime)
{
System.Web.Caching.Cache cache = System.Web.HttpRuntime.Cache;
cache.Insert(cacheKey, value, null, System.Web.Caching.Cache.NoAbsoluteExpiration, new TimeSpan(0, 0, cacheTime));
}

public static void RemoveCache(string cacheKey)
{
System.Web.HttpRuntime.Cache.Remove(cacheKey);
}

public static object GetCache(string cacheKey)
{
System.Web.Caching.Cache cache = System.Web.HttpRuntime.Cache;
return cache.Get(cacheKey);
}

}
}


WebRessurs.no anbefaler:    StackOverflow.com | Experts-Exchange.com | W3schools | ASP.NET | Codeproject | 4Guys
WebRessurs.no er utviklet og drives av SoftMaker
Sett som startside: [ ]. Bokmerk denne siden: [ klikk ]. Sitemap. http://twitter.com/webressurs_no/. Antall brukersesjoner: 14064927.
Copyright WebRessurs.no © 2003 - 2018
Jobbsøk.no - Jobbsøknad, CV, intervju, tips og lenker