之前一直用sql选择出数据放在一个集合中,然后再用Linq或者lambda去操作数据,今天学了Linq to entity 才知道原来linq产生是为了Entity。也就是EDM(实体数据模型)

关于EDM,个人觉得这篇博文写的不错:http://www.cnblogs.com/wyqlijin/archive/2011/02/25/1964934.html 这位仁兄的系列文章将的比较详细,高深!

我们创建完ADO.Net Data Entity之后就可以再vs中直接操作数据表和字段了

下面是第一个程序:

正如注释所言:我们创建完EDM后会新建一个model.edmx模型,改模型中有两个部分

1.上下文  2.实体。  上下文继承自ObjectContext 实体继承自EntityObjecthttp://www.cnblogs.com/fjsnail/p/3227683.html参考这篇

public void LinqToEntityTest()
{
studyEntities2 study = new studyEntities2(); //studyEntities2上下文类名,创建objectEntity(studyEntities2)的实例
//有关EDM 参考http://www.cnblogs.com/wyqlijin/archive/2011/02/25/1964934.html
var queryResult = from item in study.Customer //study.Customer相当于取得整个表
where item.Country == "USA"
select new { name = item.ContactName, country = item.Country }; Console.WriteLine("----------------LinqToEntity----------------");
foreach (var item in queryResult)
{
Console.WriteLine(item);
} }

  使用LINQ to Entities类的第一步是为要访问的数据库创建ObjectContext对象的一个实例,ObjectContext是在数据源中创建的.edmx 文件的编译类。这个对象是数据库的网关,提供了在程序中控制它的所有方法。它还是创建业务对象的工厂,业务对象对应于数据库中存储的概念化实体(例如,顾客和产品)。
在项目中,数据上下文类称为StudyEntilies2,从Model1.edmx文件中编译。LinqToEntityTest()方法的第一个操作是创建studyEntities2的一个实例,如下所示:
 studyEntities2 study = new studyEntities2();    
在“选择数据库对象”(Choose Your Database Objects)窗格中选择Customers表时,会把Customer对象添加到Model1.edmx的LINQ to Entities类中,并把Customers成员添加到StudyEntilies2对象中,以查询Northwind数据库中的Customer对象。实际的LINQ查询语句把northWindEntities的Customers成员用作数据源,建立查询。

Linq学习<三> linq to entity的更多相关文章

  1. linq学习三个实例

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...

  2. Linq学习<四> linq to XML

    LINQ to XML并不打算替代标准的XML API,例如,XML DOM(Document Object Model).Path.XQuery和XSLT等.如果熟悉这些API或当前需要使用或学习它 ...

  3. Linq学习(三)-基本查询

    一.本将主要介绍内容 从linq,sql,lambda三个角度比较来学习 select.orderby.分页.group by.distinct.子查询.in的用法 1.select 查询用户和它们的 ...

  4. Linq学习笔记---Linq to Xml操作

    LINQ to XML的成员, 属性列表: 属性 说明 Document 获取此 XObject 的 XDocument  EmptySequence  获取空的元素集合  FirstAttribut ...

  5. Linq学习笔记---Linq to Sql之where

    http://kb.cnblogs.com/page/42465/ Where操作 适用场景:实现过滤,查询等功能. 说明:与SQL命令中的Where作用相似,都是起到范围限定也就是过滤作用的,而判断 ...

  6. C# LINQ学习笔记三:LINQ to OBJECT之操作字符串

    本笔记摘抄自:https://www.cnblogs.com/liqingwen/p/5814204.html,记录一下学习过程以备后续查用. 一.统计单词在字符串中出现的次数 请注意,若要执行计数, ...

  7. linq学习笔记

    最近在学习linq的一些基础知识,看了c#高级编程及阅读了园子内部几篇优秀的博文,有所体会,感觉应该记录下来,作为以后复习使用.都是一些最基础的知识,大致分为三个部分:linq预备知识:linq查询: ...

  8. LINQ 学习笔记(1)

    学习资源参考 : http://www.cnblogs.com/lifepoem/archive/2011/12/16/2288017.html 常用方法是 Where, OrderBy, Selec ...

  9. LINQ to XML LINQ学习第一篇

    LINQ to XML LINQ学习第一篇 1.LINQ to XML类 以下的代码演示了如何使用LINQ to XML来快速创建一个xml: public static void CreateDoc ...

随机推荐

  1. bzoj 4104 [Thu Summer Camp 2015]解密运算——思路

    题目:https://www.lydsy.com/JudgeOnline/problem.php?id=4104 想了很久,想出一个 nlogn (也许是 n2logn )的,可惜空间是 n2 . 已 ...

  2. JMeter使用经历

    JMeter是Apache大树下的又一个果实,是一个压力测试工具,因为使用方便又开源免费,也被用来做功能测试.项目里也是拿JMeter来做功能性的接口自动化测试.这里大概说明下怎么用. 首先还是先下载 ...

  3. jave获取音频时长

    本文转载自:http://blog.csdn.net/ntotl/article/details/50419983 下载 jave-1.0.2.jar File source =new File('d ...

  4. 【原创】官方文档-hive 启动命令

    [一起学Hive]之十六-Hive的WEB页面接口-HWI Apache Hive 管网 hive metrics hive常用命令整理 Hive学习之HiveServer2服务端配置与启动 启动hi ...

  5. PL/SQL 训练05--游标

    --隐式游标--通过一个简单的SELECT ...INTO 语句提取一行数据,并放在一个局部变量中,最简单获取数据的途径 --显示游标--可以在声明单元明确的声明一个查询,这样可以在一个或多个程序中打 ...

  6. python开发函数进阶:递归函数

    一,什么叫递归 #递归#在一个函数里调用自己#python递归最大层数限制 997#最大层数限制是python默认的,可以做修改#但是我们不建议你修改 例子和尚讲故事 #!/usr/bin/env p ...

  7. 013. MVC5过滤器

    微软提供了4中过滤器: 1.Action过滤器: 在Action方法执行之前和Action方法执行之后, 会执行此过滤器中的代码. 比如在执行public ActionResult Index()方法 ...

  8. oracle中,约束、表名、Index等的名称长度限制最大只能30个字符

    oracle中,约束.表名.Index等的名称长度限制最大只能30个字符

  9. Java之Object类与instanceof关键字

    Object类是所有类的父类: 我们上下代码: package com.learn.chap03.sec14; public class A { // 上面类A继承了Object类,因此又可这样定义: ...

  10. leetcode318

    public class Solution { public int MaxProduct(string[] words) { ) { ; } int len = words.Length; int[ ...