首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> .NET 網頁程式設計 >> 關於.NET

LINQ to SQL 操作資料庫視圖:建立實體類與查詢範例

     編輯:關於.NET

視圖與實體類的 1:1 映射

LINQ to SQL 透過 O/R 設計器支援視圖操作:直接將視圖從「伺服器總管/資料庫總管」拖曳至設計介面,即可自動產生對應的實體類。值得注意的是,O/R 設計器僅支援一對一映射,即一個實體類只能對應單一資料表或視圖;若需跨表查詢,可將實體類映射至已聯結多張相關表的視圖。

範例資料庫:Northwind 內建視圖

本文採用 Northwind 資料庫自帶的 Invoices 與 Quarterly Orders 兩個視圖示範查寫作。

查詢範例 1:匿名類型投影

查詢出貨城市為 London 的發票資料:

var q = from i in db.Invoices
        where i.ShipCity == "London"
        select new {
            i.OrderID,
            i.ProductName,
            i.Quantity,
            i.CustomerName
        };

生成 SQL:

SELECT [t0].[OrderID], [t0].[ProductName], [t0].[Quantity], [t0].[CustomerName]
FROM [dbo].[Invoices] AS [t0]
WHERE [t0].[ShipCity] = @p0
-- @p0: Input NVarChar (Size = 6) [London]

查詢範例 2:完整實體映射

查詢每季訂單視圖的所有資料:

var q = from qo in db.Quarterly_Orders select qo;

生成 SQL:

SELECT [t0].[CustomerID], [t0].[CompanyName], [t0].[City], [t0].[Country]
FROM [dbo].[Quarterly Orders] AS [t0]
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved