📜  LINQ to SQL内部联接

📅  最后修改于: 2021-01-06 05:58:08             🧑  作者: Mango

LINQ to SQL内部联接

LINQ to SQL中,内部联接将仅返回记录或行,这将根据定义的条件映射两个表。

LINQ to SQL内部联接的语法

这是使用LINQ to SQL内部联接从多个表中获取数据的语法。

C#代码

 var result = from ed in db.EmployeeDetails

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

select new

{

Name = ed.EmpName,

Department = d.DeptName

};

根据以上语法,我们使用内部联接联接了“ EmployeeDetails ”,“ Departments ”表,以获取所需的数据。

LINQ to SQL内部联接的示例

在实施LINQ to SQL内部联接之前,我们需要创建一个具有所需表的数据库,并将这些表映射到LINQ to SQL文件(.dbml)。

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

一旦我们创建了所需的表并将其映射到.dbml文件。现在我们要在应用程序中显示数据。为此,我们必须右键单击应用程序->选择添加->新建项目->选择Web表单->将名称命名为Default.aspx,然后单击确定按钮

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

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







    

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

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
{
    private object db;

    protected void Page_Load(object sender, EventArgs e)
    {
        var result = from ed in db.Employeedetail

                     join d in db.Department on ed.DeptId equals d.DeptId

                     where d.DeptName.Equals("software")

                     select new

                     {

                         Name = ed.EmpName,

                         Location = ed.Location,

                         Gender = ed.Gender,

                         Department = d.DeptName

                     };

        gvDetails.DataSource = result;

        gvDetails.DataBind();

    }
}

从上面的示例中,我们尝试使用内部联接从“ EmployeeDetails ”和“ Departments”表中获取数据。

输出值