您的位置:首页 > 数据库

1.4.3 LINQ to SQL 对数据库应用查询表达式

2012-04-25 00:01 405 查看
/****** Object:  Table [dbo].[Product]    Script Date: 04/24/2012 23:58:49 ******/
IF  EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[Product]') AND type in (N'U'))
DROP TABLE [dbo].[Product]
GO

USE [C:\USERS\JON\DOCUMENTS\COMPUTING\AUTHORING\CSHARP 2 AND 3\BOOK\CODE\DATABASES\LINQDEMO.MDF]
GO

/****** Object:  Table [dbo].[Product]    Script Date: 04/24/2012 23:58:49 ******/
SET ANSI_NULLS ON
GO

SET QUOTED_IDENTIFIER ON
GO

CREATE TABLE [dbo].[Product](
[ProductID] [int] IDENTITY(1,1) NOT NULL,
[Name] [nvarchar](50) NOT NULL,
[Price] [decimal](18, 2) NOT NULL,
[SupplierID] [int] NOT NULL
) ON [PRIMARY]

GO

/****** Object:  Table [dbo].[Supplier]    Script Date: 04/24/2012 23:58:55 ******/
IF  EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[Supplier]') AND type in (N'U'))
DROP TABLE [dbo].[Supplier]
GO

USE [C:\USERS\JON\DOCUMENTS\COMPUTING\AUTHORING\CSHARP 2 AND 3\BOOK\CODE\DATABASES\LINQDEMO.MDF]
GO

/****** Object:  Table [dbo].[Supplier]    Script Date: 04/24/2012 23:58:55 ******/
SET ANSI_NULLS ON
GO

SET QUOTED_IDENTIFIER ON
GO

CREATE TABLE [dbo].[Supplier](
[SupplierID] [int] IDENTITY(1,1) NOT NULL,
[Name] [nvarchar](50) NOT NULL
) ON [PRIMARY]

GO


添加 LINQ to SQL 文件,配置数据库连接,之后把两个表拖到界面上,后台类名改为 LinqDemoDataContext

using (LinqDemoDataContext db = new LinqDemoDataContext())
{
var filtered = from p in db.Product
join s in db.Supplier
on p.SupplierID equals s.SupplierID
where p.Price > 10
orderby s.Name, p.Name
select new
{
SupplierName = s.Name,
ProductName = p.Name
};
foreach (var v in filtered)
{
Console.WriteLine("Supplier={0};Product={1}", v.SupplierName, v.ProductName);
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: