LINQ - SQL组联接

LINQ - SQL组联接 首页 / LinQ入门教程 / LINQ - SQL组联接

在LINQ to SQL中,带有into‘expression’的联接子句称为Group联接。在LINQ to SQL中,Group联接根据两个集合中的匹配元素生成对象元素序列。

LINQ to SQL组联接的语法

使用LINQ to SQL组联接从多个表获取数据的语法。

var result = from ed in db.EmployeeDetails
join d in db. Departments on ed.DeptId equals d.DeptId into edept
from dpem in edept
select new
{
Name = ed.EmpName,
Department = dpem.DeptName
};

从上面的语法中,我们加入了“EmployeeDetails”,“Departments”表,通过group join得到需要的数据。

LINQ to SQL组联接示例

在开始实现LINQ to SQL组联接示例之前,首先需要创建一个包含所需表的数据库,并将这些表映射到LINQ to SQL文件(.dbml)。

若要了解映射过程,请单击链接LINQ to SQL

一旦创建了所需的表并将其映射到.dbml文件。现在,希望显示应用程序中的数据。为此,无涯教程右键单击application->Select Add->New Item-> Select web Form->将名称指定为Default.aspx,然后单击OK按钮

现在打开Default.aspx页面并编写代码,如下所示:

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">

</head>
<body>
    <form id="form1" runat="server">
        <div>
            <asp:GridView ID="gvDetails" runat="server"></asp:GridView>
        </div>
    </form>
</body>
</html>

现在打开文件后面的代码并编写代码,如下所示:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

public partial class _Default : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)

    {

        EmployeeDBDataContext db = new EmployeeDBDataContext();

        if (!Page.IsPostBack)

        {

            var result = from ed in db.EmployeeDetails

                         join d in db.Departments on ed.DeptId equals d.DeptId into edept

                         from dpem in edept

                         select new

                         {

                             Name = ed.EmpName,

                             Location = ed.Location,

                             Gender = ed.Gender,

                             Department = dpem.DeptName

                         };

            gvDetails.DataSource = result;

            gvDetails.DataBind();

        }

    }
}

从上面的例子中,我们尝试使用 Group Join 从“EmployeeDetails”和“Departments”表中获取数据。

链接:https://www.learnfk.comhttps://www.learnfk.com/linq/linq-to-sql-group-join.html

来源:LearnFk无涯教程网

LINQ To SQL Group Join

祝学习愉快!(内容编辑有误?请选中要编辑内容 -> 右键 -> 修改 -> 提交!)

技术教程推荐

深入拆解Java虚拟机 -〔郑雨迪〕

即时消息技术剖析与实战 -〔袁武林〕

高并发系统设计40问 -〔唐扬〕

摄影入门课 -〔小麥〕

Java业务开发常见错误100例 -〔朱晔〕

说透元宇宙 -〔方军〕

手把手教你落地DDD -〔钟敬〕

运维监控系统实战笔记 -〔秦晓辉〕

AI 应用实战课 -〔黄佳〕

好记忆不如烂笔头。留下您的足迹吧 :)