使用linq 左连接从 两个数据表 返回数据到视图

1,使用entity framework 连接数据库

2,创建一个新的类,定义要从两个数据表得到的数据

下面两个是framework连接数据库的数据表类

public class A{

public string  a1{get;set;}

public string  a2{get;set;}

}

public class B{

public string  b1{get;set;}

public string  b2{get;set;}

}

定义一个新类

public class C{

public string  a1{get;set;}

public string  b1{get;set;}

}

控制器得到数据

Context context=new Context();//使用entity

var list=from m in context.A

            join n in contex.b

            on m.xx equals n.xx into jj //两个表关联点

           where  m.xx=xxx //条件

         from  tt in jj.DefaultIfempty()

          select  new C{ xx=m.xx,xx=tt.xx }

 

视图获取数据列表显示

@model Iqueryable

 

if(Model.Count() !=0){

 foreach(var item in Model){

  @item.xx

}

}

你可能感兴趣的:(c#,linq,framework)