LINQ在网站开发中的应用

来源 :文理导航 | 被引量 : 0次 | 上传用户:vl244
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  【摘要】LINQ技术是NETFramework 3.5版本的一个新的技术,笔者主要结合自身的工作,介绍了在网站开发中如何建LINQ to SQL实体和符合开发环境的数据访问层,以及如何使用LINQ to SOL进行数据库操作,希望能给同行提供帮助。
  【关键词】LINQ;数据绑定;ASP.NET
  在网站的开发开发过程中,经常用到各种各样的查询,例如产品动态的切换、网站地图的形成和各种数据的查询等,它们在与数据库交互的时候,是非常麻烦是的事情。在一个数据源中寻求数据的过程往往就是查询的过程。并且从现在很多的数据源早已形成各种查询语言,网站开发者面对各种类型的数据就要重新学习不同的查询语言,在这种情况下,LINQ技术的应用正好缓解了这种非常繁琐的情况。本文介绍分析了在网站开发中利用LINQ技术访问数据库的步骤,希望能给同行提供帮助。
  一、如何建立LINQ to SQL实体
  实体类的属性映射在相应的图表中的列,实体是描绘映射到图或者数据库中的类。在使用的Visual Studio2008中,我们能够应用O/R设计器创建实体。通过这种设计器建立实体的程序非常简单,只要在“服务器资源管理器”中,寻找到网站曾经使用的视图或者数据库表,然后把此视图或者数据库表移动到O/R设计器上就可以了。
  二、建立适合网站开发环境的数据访问层
  我们在网站的研发过程中,可以修改LINQ模型,让它能够进行很多的操作,例如为它提供比较多的查询方式和灵活多样的数据库表查询等。
  现在我们假设与数据库及表对应的类已经创建的前提下,以Nothwind数据库中的数据表为例进行数据操作。例如在LINQ的模型中加入自己的查询方式:
  public static IEnumerableExecuteQuery(string query,Objeetl parameters)
  {
  IEnumerableresults=AnonymousDataContext.ExecuteQuery(query,parameters);
  return results;
  }
  另外,我们还能进一步封装LINQ中数据,使对下层的LINQ命令对上层的用户做隐藏,这样更加适合对象的概念.
  public[EnumerableExecuteQuery0
  {
  IEnumerableresults--fromentitys in myDatabase.Customers
  select entitys;
  return results;
  }
  这样对于业务逻辑层,就更加有利于面向对象的数据开发,更加面向对象化。
  对于这些模型的修改,我们既可以让LINQ为网站服务的更加灵活,又可以让我们更加灵活对数据的操作,达到两全其美的效果。因此我们都会在网站的研发中,适当的修改LINQ的数据访问方式,建立自己的访问层。
  三、使用LINQ to SOL执行标准数据库操作
  在使用LINQ的过程中,我们可以将每个数据库表转为实体类的形式,把相应的数据操作,转化为对实体对象的操作,对类的属性的操作就是对字段的操作,方法操作是由添加、修改、删除、查询等方式操作转化而来,把面向对象的概念与嵌入式的SQL语句接轨,这样更加有利于程序开发。
  1.LINQ对象的创建
  在LINQ技术应用中,对象的创建与对象的创建原则上是一样的,这是因为LINQ技术将每个表转换成了对象,例如:
  CustomersdataAccess=new Customers O;
  IEnumerableMyCustomers=dataAeeess.ExecuteQueryO;
  我们这里生成的MyCustomers对象即数据表Customers的展现,我们假如想将数据表中的字段进行访问,直接对MyCustomers对象的属性惊醒访问即可,应用的方法河面性对象的方法是一样的。
  可以用循环的方式访问到每一列数据:
  int count=MyCustomers.CountO;
  for(int i=O;i<=count;i++)
  Customersrow=MyCustomers.ElementAt(i);
  其中row对象就是代表了Customers表中的每一行,每个字段就可以通过这一样的对象取出数据来,比如取第四行的City字段,就是:
  Customers roW=MyCustomers.ElementAt(3);
  现在City属性,就是我们需要的第四行的city字段的数据。
  2.使用LINQ to SQL进行插入操作
  我们在插入新记录时,第一位的要使用InsertOnSubmit0方法将一个实体加入到一寸的数据库表中,再对数据库使用SUbmitChanges0方法进行插入操作。下列代码是先创建了—个C U stO mers实体eustomerTolnsert,然后把实体添加到数据库表中,就是应用的InsertOnSubmit0这一方法,最后再用这方法把数据添加到数据库中。
  Customers customerTolnsert--newCustomerso;
  customerTolusert.ContactName=”George”:
  eustomerTolnsert.Country=’’U KI;
  Customers.1nsertOnSubmit(customerToluset0;
  SubmitChanges0;
  四、结论
  总之,LINQ技术是visual Studio 2008中一项突破性的创新,它的应用方便了网络的开发程序,为我们以后的数据操作指明了方向,我们要切实把这一技术应用到计算机网络开发中,使其发挥最大效能。
  【参考文献】
  [1]战非.NET平台下基于LINQ三层架构的实现[J].电脑知识与技术.2010.(11)
  [2]魏一搏、徐夏.LINQ To SQL在ASP.NET数据访问中的应用[J].信息系统工程.2010.(03)
  [3]田江.浅谈LINQ访问技术[J].科教文汇(下旬刊).2009.(07)
  [4]徐海涛.LINQ to Object與传统集合查询的性能比较[J].计算机时代.2009.(08)
  (作者单位:云南工程职业学院)
其他文献
企业知识理论一经产生就对知识经济时代的组织能力基础、组织设计原则以及企业边界决定因素等问题作出令人信服的解释.战略联盟从目前的发展来看,其首要目标已经由原来的共享
在日常的英语教学中,我们有多种不同的课型。包括:语法课、阅读课、对话课、词汇课、听力课、写作课等。在各种不同的课型中,我们除了要向学生传授语言知识,培养语言技能,指导学习策略,培养良好的情感、态度和价值观之外,还有一点不容忽视,就是要培养学生跨文化交际的意识和能力。下面谈谈我对主文化教育与初中英语课堂教学关系的理解。  一、认识初中英语教学中文化教育的必要性、迫切性  在初中英语教学中导入文化背景
【摘要】化学美包括化学内容美、知识结构美、化学家的崇高美、化学实验美等多方面。加强化学美的教育,对激发学生的非智力因素,加深学生对基础知识的理解和掌握,培养学生的科学精神和科学态度,掌握科学的学习方法,提升创新能力都有极其重要的作用。  【关键词】化学美;科学方法;科学精神;创新能力;社会责任感  一、问题的提出  中小学由“应试教育”转向素质教育是基础教育的返朴归真,是教育领域的一场深刻革命,是