在LINQ to SQL中, 内部连接将仅返回记录或行, 这将根据定义的条件映射两个表。
LINQ to SQL内部连接的语法
这是使用LINQ to SQL内部连接从多个表中获取数据的语法。
【LINQ to SQL内部连接】C#代码
var result = from ed in db.EmployeeDetailsjoin d in db.Departments on ed.DeptId equals d.DeptIdselect new{Name = ed.EmpName, Department = d.DeptName};
通过以上语法, 我们连接了” EmployeeDetails” , “ 部门” 表, 以使用内部连接来获取所需的数据。
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" %>
<
!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
{
private object db;
protected void Page_Load(object sender, EventArgs e)
{
var result = from ed in db.Employeedetailjoin d in db.Department on ed.DeptId equals d.DeptIdwhere d.DeptName.Equals("software")select new{Name = ed.EmpName, Location = ed.Location, Gender = ed.Gender, Department = d.DeptName};
gvDetails.DataSource = result;
gvDetails.DataBind();
}
}
从上面的示例中, 我们尝试使用内部连接从” EmployeeDetails” 和” 部门” 表中获取数据。
输出
文章图片
推荐阅读
- LINQ to SQL group连接
- LINQ to SQL选择查询
- LINQ到列表/集合
- LINQ转Int数组
- LINQ转字符串数组
- LINQ对象
- LINQ转字符串
- LINQ empty方法
- LINQ repeat方法