LINQ - ASP.Net
作為一組 .NET 框架擴充套件,LINQ 是 ASP.NET 開發人員首選的資料訪問機制。ASP.NET 3.5 內建了一個名為 LINQDataSource 的控制元件,可以輕鬆地在 ASP.NET 中使用 LINQ。ASP.NET 使用上述控制元件作為資料來源。現實生活中的專案大多包含網站或 Windows 應用程式,因此為了更好地理解 LINQ 與 ASP.NET 的概念,讓我們從建立一個使用 LINQ 功能的 ASP.NET 網站開始。
為此,必須在您的系統上安裝 Visual Studio 和 .NET 框架。開啟 Visual Studio 後,轉到檔案 → 新建 → 網站。將開啟一個彈出視窗,如下面的圖所示。
現在,在左側的模板下,將有兩個語言選項來建立網站。選擇Visual C# 並選擇ASP.NET 空網站。
選擇要在系統中儲存新網站的資料夾。然後按確定,很快解決方案資源管理器就會出現在您的螢幕上,其中包含所有 Web 檔案。右鍵單擊解決方案資源管理器中的 Default.aspx,然後選擇在瀏覽器中檢視,以在瀏覽器中檢視預設的 ASP.NET 網站。很快您的新 ASP.NET 網站將在 Web 瀏覽器中開啟,如下面的螢幕截圖所示。
.aspx 事實上是 ASP.NET 網站中使用的主要副檔名。Visual Studio 預設情況下會為基本網站建立所有必要的頁面,例如主頁和關於我們頁面,您可以在其中方便地放置內容。網站的程式碼在此處自動生成,也可以檢視。
LINQDataSource 控制元件
可以使用 LINQDataSource 控制元件在 ASP.NET 網站的頁面中更新、插入和刪除資料。絕對不需要指定 SQL 命令,因為 LINQDataSource 控制元件會為這些操作使用動態建立的命令。
該控制元件允許使用者透過標記文字中的屬性設定方便地在 ASP.NET 網頁中使用 LINQ。LINQDataSource 與SqlDataSource和ObjectDataSource等控制元件非常相似,因為它可以用於將頁面上存在的其他 ASP.NET 控制元件繫結到資料來源。因此,我們必須有一個資料庫來解釋 LINQDataSource 控制元件呼叫的各種函式。
在開始解釋 ASP.NET 網頁表單中控制元件的使用之前,必須開啟 Microsoft Visual Studio 工具箱並將 LINQDataSource 控制元件拖放到 ASP.NET 網站的 .aspx 頁面上,如下面的圖所示。
下一步是配置 LINQDataSource,選擇員工記錄的所有列。
現在,將 GridView 控制元件新增到 .aspx 頁面並進行配置,如下面的圖所示。GridView 控制元件功能強大,並提供靈活的資料處理能力。配置控制元件後,它將出現在瀏覽器中。
現在可以在螢幕上檢視的 .aspx 頁面的程式碼為:
<!DOCTYPE html>
<html>
<head runat = "server">
<title></title>
</head>
<body>
<form id = "form1" runat = "server">
<div>
<asp:GridView ID = "GridView1" runat = "server" AutoGenerateColumns = "False"
DataKeyNames = "ContactID" DataSourceID = "LINQDataSource1">
<Columns>
<asp:BoundField DataField = "ContactID" HeaderText = "ContactID"
InsertVisible = "False" ReadOnly="True" SortExpression = "ContactID" />
<asp:CheckBoxField DataField = "NameStyle" HeaderText = "NameStyle"
SortExpression = "NameStyle" />
<asp:BoundField DataField = "Title" HeaderText = "Title" SortExpression = "Title" />
<asp:BoundField DataField = "FirstName" HeaderText = "FirstName"
SortExpression="FirstName" />
<asp:BoundField DataField = "MiddleName" HeaderText = "MiddleName"
SortExpression = "MiddleName" />
<asp:BoundField DataField = "LastName" HeaderText = "LastName"
SortExpression = "LastName" />
<asp:BoundField DataField = "Suffix" HeaderText = "Suffix"
SortExpression = "Suffix" />
<asp:BoundField DataField = "EmailAddress" HeaderText = "EmailAddress"
SortExpression = "EmailAddress" />
</Columns>
</asp:GridView>
<br />
</div>
<asp:LINQDataSource ID = "LINQDataSource1" runat = "server"
ContextTypeName = "LINQWebApp1.AdventureWorksDataContext" EntityTypeName = ""
TableName = "Contacts">
</asp:LINQDataSource>
</form>
</body>
</html>
這裡需要注意的是,必須將 ContextTypeName 屬性設定為表示資料庫的類的屬性。例如,這裡設定為 LINQWebApp1.AdventureWorksDataContext,因為此操作將建立 LINQDataSource 和資料庫之間的必要連線。
使用 LINQ 在 ASP.NET 頁面中插入、更新和刪除資料
在嚴格完成上述所有步驟後,從LINQDataSource 控制元件中選擇LINQDataSource 任務,並從同一控制元件中選擇所有三個框以啟用插入、啟用更新和啟用刪除,如下面的螢幕截圖所示。
很快,宣告性標記將顯示在您的螢幕上,如下所示。
<asp:LINQDataSource ContextTypeName = "LINQWebApp1.AdventureWorksDataContext" TableName = "Contacts" EnableUpdate = "true" EnableInsert = "true" EnableDelete = "true" ID = "LINQDataSource1" runat = "server"> </asp:LINQDataSource>
現在,由於有多行和多列,最好在 .aspx 表單上新增另一個名為詳細資訊檢視或主控制元件的控制元件,該控制元件位於網格檢視控制元件下方,以僅顯示網格中所選行的詳細資訊。從詳細資訊檢視控制元件中選擇詳細資訊檢視任務,並選擇如下所示的複選框。
現在,只需儲存更改並按 Ctrl + F5 在瀏覽器中檢視頁面,現在可以在詳細資訊檢視控制元件上刪除、更新、插入任何記錄。