基于反射技术及面向对象的关系数据存取方法.pdfVIP

基于反射技术及面向对象的关系数据存取方法.pdf

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于反射技术及面向对象的关系数据存取方法.pdf

第25卷 第 12期 赤 峰 学 院 学报 (自然 科 学版 ) Vol_25No.12 2009年 12月 JournalofChifengUniversity(NaturalScienceEdition) Dec.20o9 基于反射技术及面向对象的关系数据存取方法 张 全,陈可为,杨积斌,高海军 (大庆油田有限责任公司勘探开发研究院 应用软件研究室,黑龙江 大庆 163712) 摘 要:为了解决大型数据库结构复杂而引起的应用程序存取数据上的不便,本文详细讲解了将数据库关系模型映射成 为对象的基本方法,对反射技术、OR映射等相关概念做 了概述.并详述了如何利用反射技术将主键、外键等约束映射到对象 模 型上. 关键词:反射;面向对象;关系型数据库;ORM. 中图分类号:TP311.1 文献标识码:A 文章编号:1673—260X(2009)12—0067—03 随着信息技术的不断发展,企业 内部积累了大量的数 方法不是本文重点,故不做详述若有需要可参考后面附带 据,因此各企业都建立了自己的大型数据库.数据库作为一 的源代码.这些代码虽然能动态编译webservice服务的代理 切程序及软件的应用的基础,它的小小的变更有可能使整 类,但我们在开发时并不能以显式的方式来直接调用服务, 个企业的信息系统瘫痪.传统的面向数据库逻辑结构的编程 说白了就是我们不能以 “·”的方式调用~ebservice函数,因 方法早已不能满足用户 日益丰富的需求,而用户需求变更 为只有运行时才会动态编译这些类,那么我们就要使用反 之快也使我们不得不考虑如何开发才能使软件的生命周期 射技术来调用这些还没有编译类中的函数. 更长、适应性更强、应用价值更大.面向对象技术允许我们建 在使用反射技术之前我们需要得到这个类的类型 立与数据库及表相应的类,这样我们就在数据库与应用层 一 type(关于类型Type的具体概念如果不熟习可以参考一 上建立了一座桥梁 ,使得应用层可以通过类来和数据库打 本介绍 C#的书籍),我们可以通过 Assembly (程序集)的 交道.而反射技术提供了一种在运行时检索类的内部结构的 getType(“类名”)方法得到我们想访问类的类型,而后我们 方法 ,可以使我们动态的自由的访问我们所需要的数据. 使用 system.Activator.Creatlnstance(“类型”)来创建一个类的 1 反射技术 . 实例,之后我们就要用到反射技术了一Net将应用程由 “程序 1.1 什么是反射技术 集”、“模块”、“类”组成 ,其关系如下图1.而反射提供一种编 在c#中有一个类完成在运行过程中检查和处理程序 程方式使程序员可以再运行时访问这些组成部分的相关信 元素的功能,这个类叫Renection,中文翻译过来叫做反射. 息.本例中我们使用第三层的反射 ,即得到代理类实例化后 反射技术允许我们完成以下任务:枚举类型成员 、实例化新 的方法.代码如:MethodInfomet}lod=t.GetMethod(method— 对象、执行对象的成员、查找类型信息、查找程序集信息、检 name),而后调用生成的方法代码如method.Invoke(obj,a驿). 查应用于类型的定制特性、创建和编译新程序集等.适当的 总结一下我们刚才的代码都完成了什么,第一我们动 使用反射技术能够大大提高程序的复用性和灵活性. 态加载并编译了webserviee代理类.第二,我们在webservice 1.2 反射技术实例 下面我们用一个非常简单的例子来说明反射技术到底 能做些什么.假如我们要开发一个访问webservice服务的程 序,客户端使用c#开发 ,一般情况下若 webservice已经配 置完毕可以使用了,那么我们使用 Visua St

文档评论(0)

mzi9603 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档