您的位置:首页 > 编程语言 > ASP

ASP.NetMVC学习总结1

2013-12-15 18:08 351 查看

知识储备

1.自动属性

2.隐式推断类型var
3.对象初始化器与几何初始化器
4.匿名类
5.扩展方法
6.Lambda表达式(Linq)
 下面新建一个Demo,复习以上的知识 public class Person
 {
  public string Name { get; set; }
  public int Age { get; set; }
  
 }
public void CreateDemo()
{
Person p=new Person(){ Name = "wzp",Age = 12};
List<Person> list = new List<Person>
{
new Person() {Name = "wzo", Age = 12},
new Person() {Name = "wzp", Age = 13}

};
var  c= new {Name="www",Age=12};//匿名类	    }
    DelDemo del = (a, b) => a > b;//自己手写的委托
    var func = new  Func<int, int, bool>((a,b)=>a>b);//系统有返回值委托
  var action = new Action<string>(s => { });//无返回值的委托

ORM

O=>Object代表对象,R=>Relation关系,M=>Mapping代表映射,连起来表示对象与表关系的映射的框架,官方的说法是:面向对象的对象模型和关系型数据库的数据结构相互转化。

.NetEF框架

EF框架本身封装了ADO.NET,在此之上引入ORM概念模型,作用是将实体的变化映射到数据数据库中.

EF的强大作用

1.跟vs开发工具集成度比较好,自动化程度高,代码中都是操作强类型,简单,快捷方便,大大提高了开发效率

2.可以支持跨数据库,由于我们开发人员代码中全是对实体的操作,不涉及对数据库的具体操作,所以只需要改一下配置,就可以实现跨数据库.

3.EF提高的模型设计器非常强大,也附带的自动化模型生成代码的功能,ModelFirst,DBFirst.

 缺陷就是:性能较差(有生成sql脚本的过程),生成复杂的sql效率超慢

IEnumerable<>和IQuerable<>的区别:

 前者是直接将数据加载到本地的内存中

后者是采用延迟加载,用的时候才去查
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息