CTOCIO IT专家网

天极传媒 比特网 | 天极网 | IT专家网 | IT商网 | 52PK游戏网 | 手机天极 | IT分众 |
IT专家网搜索

您现在的位置: IT专家网 > Web服务子站 > 技巧

ASP.NET应用中缓存Oracle数据

作者: 佚名,  出处:中国IT实验室收集整理, 责任编辑: 李春禹, 
2007-12-19 11:27
  进一步的,文章提出了一个保持缓存数据以使其始终与Oracle数据同步的实现。当相应的数据源改变时,我们可以用这种方法来从缓存中删除项目。为更新缓存依赖文件,我们需要写一个C函数或Java存储过程。

  以下是引用片段:  

PublicSub RemovedCallback(ByVal key AsString, ByVal value AsObject, ByVal reason As
  CacheItemRemovedReason)
  Dim Source As DataView
  Source = getRecordFromdatabase()
  Cache.Insert("employeeTable ", Source, New
  System.Web.Caching.CacheDependency("d:\download\tblemployee.txt"),
  Cache.NoAbsoluteExpiration, Cache.NoSlidingExpiration,
  CacheItemPriority.Normal, onRemove)
  EndSub
  方法getRecordFromdatabase()负责查询数据库表Employee并返回一个DataView对象引用。它使用一个名为getEmployee的存储过程来抽象从Employee表中取数据的SQL.这个方法有一个名为p_empid的参数,表示Employee的主键。

  以下是引用片段:  

PublicFunction getRecordFromdatabase (ByVal p_empid As Int32) As DataView
  Dim con As OracleConnection = Nothing
  Dim cmd As OracleCommand = Nothing
  Dim ds As DataSet = Nothing
  Try
  con = getDatabaseConnection( "UserId=scott;Password=tiger;Data Source=testingdb;")
  cmd = New OracleCommand("Administrator.getEmployee", con)
  cmd.CommandType = CommandType.StoredProcedure
  cmd.Parameters.Add(New OracleParameter("employeeId", OracleDbType.Int64))。Value = p_empid
  Dim param AsNew OracleParameter("RC1", OracleDbType.RefCursor)
  cmd.Parameters.Add(param)。Direction = ParameterDirection.Output
  Dim myCommand AsNew OracleDataAdapter(cmd)
  ds = New DataSet
  myCommand.Fill(ds)
  Dim table As DataTable = ds.Tables(0)
  Dim index As Int32 = table.Rows.Count
  Return ds.Tables(0)。DefaultView
  Catch ex As Exception
  ThrowNew Exception("Exception in Database Tier Method getRecordFromdatabase () " + ex.Message, ex)
  Finally
  Try
  cmd.Dispose()
  Catch ex As Exception
  Finally
  cmd = Nothing
  EndTry
  Try
  con.Close()
  Catch ex As Exception
  Finally
  con = Nothing
  EndTry
  EndTry
  EndFunction
函数getDatabaseConnection接受一个连接字符串(connection stirng)为参数,返回一个OracleConnection对象引用。

共4页。 9 1 2 3 4 :

网友评论

笔名 
请您注意:遵守国家有关法律、法规,尊重网上道德,承担一切因您的行为而直接或间接引起的法律责任。    IT专家网友拥有管理笔名和留言的一切权利。
  • 周排行榜
  • 月排行榜

邮件订阅

       
天极服务 | 关于我们 | 网站律师 | 加入我们 | 联系我们 | 广告业务 | 友情链接 | 我要挑错
All Rights Reserved, Copyright 2004-2008, Ctocio.com.cn
渝ICP证B2-20030003号 如有意见请与我们联系 powered by 天极内容管理平台CMS4i