您的位置:首页 > 其它

LINQ基础之联合查询

2011-08-09 23:14 281 查看
1、创建两个类:Book和PublishInfo;
//书籍类

public class Book

{

public Book()

{

}

public string BookName { get; set; }

public string ISBN { get; set; }

public double Price { get; set; }

public string Publish { get; set; }

}

//出版社类

public class PublishInfo

{

public PublishInfo()

{

}

public string PublishName { get; set; }

public string Address { get; set; }

public string Contact { get; set; }

public string Phone { get; set; }

}

2、添加一个按钮事件,处理代码如下:

protected void btnJoinOperation_Click(object sender, EventArgs e)

{

//我直接了填充数据,以查看处理结果

List<Book> books = new List<Book>()

{

new Book(){BookName="C#程序设计", ISBN="123456", Price= 34.5, Publish="A出版社"},

new Book(){BookName="ASP.NET", ISBN="123456", Price= 34.5, Publish="B出版社"},

new Book(){BookName="C++", ISBN="123456", Price= 34.5, Publish="A出版社"},

new Book(){BookName="Java", ISBN="123456", Price= 34.5, Publish="D出版社"},

new Book(){BookName="Delphi", ISBN="123456", Price= 34.5, Publish="F出版社"},

new Book(){BookName=".NET程序设计", ISBN="123456", Price= 34.5, Publish="F出版社"},

};

List<PublishInfo> publishes = new List<PublishInfo>()

{

new PublishInfo(){PublishName="A出版社", Address="地址1", Contact="孙悟空", Phone="3343568"},

new PublishInfo(){PublishName="B出版社", Address="地址2", Contact="孙悟空2", Phone="3343568"},

new PublishInfo(){PublishName="C出版社", Address="地址3", Contact="孙悟空3", Phone="3343568"},

new PublishInfo(){PublishName="D出版社", Address="地址4", Contact="孙悟空4", Phone="3343568"},

new PublishInfo(){PublishName="E出版社", Address="地址5", Contact="孙悟空5", Phone="3343568"},

new PublishInfo(){PublishName="F出版社", Address="地址6", Contact="孙悟空6", Phone="3343568"},

};

//使用连接查询,并取出书籍与出版社信息

var BookandPublish = from book in books

join publish in publishes

on book.Publish equals publish.PublishName

select new

{

书籍名称 = book.BookName,

出版社名称 = book.Publish,

出版社地址 = publish.Address,

出版社联系人= publish.Contact,

出版社电话 = publish.Phone

};

//绑定到控件GridView

GridView1.DataSource = BookandPublish;

GridView1.DataBind();

}

3、输出结果:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: