LINQ - ADO.NET

LINQ - ADO.NET 首页 / LinQ入门教程 / LINQ - ADO.NET

LINQ to ADO.NET表示对ADO.NET中的对象使用LINQ查询。LINQ to ADO.NET使无涯教程有机会在ADO.NET中编写关于可枚举对象的LINQ查询,而LINQ to ADO.NET具有三种可用的LINQ技术。它们是LINQ to DataSet、LINQ to SQL和LINQ to Entities。

LINQ to ADO.NET的语法

下面是LINQ to ADO.NET对象的语法。

var result = from dt in ds.Tables[0].AsEnumerable()
where (dt.Field<string>("Gender") == "Male")
select new
{
Name = dt.Field<string>("empname"),
Location = dt.Field<string>("location"),
Gender = dt.Field<string>("gender"),
};

在上述语法中,在 ADO.NET 数据集对象“ds”上编写了 LINQ 查询来获取所需的数据。

LINQ到ADO.NET示例

在这里,将通过示例了解如何使用LINQ to ADO.NET,因为将创建一个新的Web应用程序,并与SQL服务器建立连接,然后使用LINQ在网格视图中显示数据,并编写对ADO.NET对象(DataSet)的查询。

首先,将在数据库中创建一个新表“EmployeeDetails”,将在数据库中执行以下查询并插入一些虚拟数据以在应用程序中显示它。

链接:https://www.learnfk.comhttps://www.learnfk.com/linq/linq-to-ado-net.html

来源:LearnFk无涯教程网

现在,无涯教程将为转到FILE->选择New->Project ... 创建一个新的Web应用程序,如下所示

LINQ Crud

选择新项目后,将打开一个弹出窗口,必须选择ASP.NET空Web应用程序并将其命名为LINQ to ADO.NET,然后单击"确定"以创建新的Web应用程序。

一旦创建了所需的表并将其映射到.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">
    <title></title>
</head>
<body>
    <form id="form1" runat="server">
        <div>
            <asp:GridView ID="gvDetails" CssClass="Gridview" runat="server" AutoGenerateColumns="False">

<HeaderStyle CssClass="headerstyle" />

<Columns>

<asp:BoundField HeaderText="Name" DataField="Name" />

<asp:BoundField HeaderText="Location" DataField="Location" />

<asp:BoundField HeaderText="Gender" DataField="Gender" />

</Columns>

</asp:GridView>
        </div>
    </form>
</body>
</html>

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

using System;
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
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)
    {
        if (!Page.IsPostBack)

        {

            BindGridview();

        }


    }
    protected void BindGridview()

    {

        DataSet ds = new DataSet();

        using (SqlConnection con = new SqlConnection("Data Source=JavaTPoint\\SQLEXPRESS;Integrated Security=true;Initial Catalog=ADONET"))

        {

            con.Open();

            SqlCommand cmd = new SqlCommand("select * from employeedetails", con);

            cmd.CommandType = CommandType.Text;

            SqlDataAdapter da = new SqlDataAdapter(cmd);

            da.Fill(ds);

            con.Close();

            if (ds.Tables[0].Rows.Count > 0)

            {

                var result = from dt in ds.Tables[0].AsEnumerable()

                             where (dt.Field<string>("Gender") == "Male")

                             select new

                             {

                                 Name = dt.Field<string>("EmpName"),

                                 Location = dt.Field<string>("Location"),

                                 Gender = dt.Field<string>("Gender"),

                             };

                gvDetails.DataSource = result;

                gvDetails.DataBind();

            }
        }
    }
}

在上面的示例中,无涯教程使用了 ADO.NET 数据集对象,并在数据集对象上编写了 LINQ 查询,以从 Gender 等于“女性”的数据集中获取详细信息。现将运行应用程序并查看输出。

LINQ Crud

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

技术教程推荐

Java核心技术面试精讲 -〔杨晓峰〕

从0开始学游戏开发 -〔蔡能〕

快速上手Kotlin开发 -〔张涛〕

现代C++编程实战 -〔吴咏炜〕

小马哥讲Spring核心编程思想 -〔小马哥〕

用户体验设计实战课 -〔相辉〕

HarmonyOS快速入门与实战 -〔QCon+案例研习社〕

Serverless进阶实战课 -〔静远〕

零基础GPT应用入门课 -〔林健(键盘)〕

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