close
視圖
我們使用視圖和使用數據表類似,只需將視圖從“服務器資源管理器/數據庫資源管理器”拖動到O/R 設計器上,自動可以創建基於這些視圖的實體類。我們可以同操作數據表一樣來操作視圖了。這裡註意:O/R 設計器是一個簡單的對象關係映射器,因為它僅支持1:1 映射關係。換句話說,實體類與數據庫表或視圖之間只能具有1:1 映射關係。不支持複雜映射(例如,將一個實體類映射到多個表)。但是,可以將一個實體類映射到一個聯接多個相關表的視圖。下面使用NORTHWND數據庫中自帶的Invoices、Quarterly Orders兩個視圖為例,寫出兩個範例。
查詢:匿名類型形式
我們使用下面代碼來查詢出ShipCity在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; Prec = 0; Scale = 0) [London]
查詢:標識映射形式
下例查詢出每季的訂單。
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]
文章標籤
全站熱搜