基于方法的查询语法示例:元素运算符 (LINQ to DataSet)

更新:November 2007

本主题中的示例演示如何使用 First 方法以便使用基于方法的查询语法来获取 DataSet 中的 DataRow 元素。

这些示例中所使用的 FillDataSet 方法已在 向数据集中加载数据 中指定。

本主题中的示例使用 AdventureWorks 示例数据库中的 Contact、Address、Product、SalesOrderHeader 和 SalesOrderDetail 表。

本主题中的示例使用下面的 using/Imports 语句:

Option Explicit On

Imports System
Imports System.Linq
Imports System.Linq.Expressions
Imports System.Collections.Generic
Imports System.Data
Imports System.Data.SqlClient
Imports System.Data.Common
Imports System.Globalization
using System;
using System.Linq;
using System.Linq.Expressions;
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
using System.Data.Common;
using System.Globalization;

有关更多信息,请参见如何:在 Visual Studio 中创建 LINQ to DataSet 项目

First

示例

此示例使用 First 方法来查找以“caroline”开头的第一个电子邮件地址。

' Fill the DataSet.
Dim ds As New DataSet()
ds.Locale = CultureInfo.InvariantCulture
' See the FillDataSet method in the Loading Data Into a DataSet topic.
FillDataSet(ds)

Dim contacts As DataTable = ds.Tables("Contact")

Dim startsWith As DataRow = contacts.AsEnumerable(). _
    First(Function(contact) contact.Field(Of String) _
    ("EmailAddress").StartsWith("caroline"))

Console.WriteLine("An email address starting with 'caroline': {0}", _
    startsWith.Field(Of String)("EmailAddress"))
// Fill the DataSet.
DataSet ds = new DataSet();
ds.Locale = CultureInfo.InvariantCulture;
FillDataSet(ds);

DataTable contacts = ds.Tables["Contact"];

DataRow startsWith = contacts.AsEnumerable().
    First(contact => contact.Field<string>("EmailAddress").StartsWith("caroline"));

Console.WriteLine("An email address starting with 'caroline': {0}",
    startsWith.Field<string>("EmailAddress"));

请参见

概念

向数据集中加载数据

标准查询运算符概述

其他资源

LINQ to DataSet 示例