如今的
網絡有很多偉大的創(chuàng)新,能夠很容易利用LINQ的查詢能力,并使之與Web用戶界面的豐富新和靈活性相結合.的確很容易.
在開始之前你需要弄明白幾個概念:
* LinqDataSource 控件 -- 允許你在基于Web的數據綁定中使用LINQ查詢作為數據源.
* LinqDataSource.Selecting 事件 -- 允許你自定義任意LINQ定義查詢(包括匿名查詢) 為數據源. 只要從VB編輯器的下拉列表中選中LinqDataSource并選擇Selecting事件, 然后在事件處理代碼中設定e.Result = <你的LINQ查詢> 即可.
* OR設計器和Linq 到SQL -- 如果你正用LINQ查詢直接連接到SQL數據庫 (而不是對象集合, xml, 等等) 上, 這是一種創(chuàng)建查詢的簡單方法, 我們稱它為DataContext 對象. “OR”是對象-關系映射的縮寫, 例如, 從關系數據庫數據到.NET對象的映射
* ASP.NET 數據綁定表達式 -- 使你能夠計算由數據源字段, 或簡單控件的屬性, 或控件列表而來的ASP形式的<%# Eval("YOURFIELD") %>表達式
用LINQ到SQL創(chuàng)建一個簡單的Web窗體
第一篇文章用一個最簡單的Web窗體, 來逐一解釋這些概念. 然后我將根據你們的回復在以后的文章中添加更多主題并擴展這個示例.
下面是一個最初我們需要的Web窗體輸出示例 -- 一個非常簡單的人力資源程序的員工列表單 -- 我得承認它缺少修飾, 并需要一些用戶界面上的加工:
<!--
Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/
-->EmployeeID: 2 Andrew Fuller Andrew received his BTS commercial in 1974 and a Ph.D. in international marketing from the University of Dallas in 1981. He is fluent in French and Italian and reads German. He joined the company as a sales representative, was promoted to sales manager in January 1992 and to vice president of sales in March 1993. Andrew is a member of the Sales Management Roundtable, the Seattle Chamber of Commerce, and the Pacific Rim Importers Association. EmployeeID: 1 Nancy Davolio Education includes a BA in psychology from Colorado State University in 1970. She also completed "The Art of the Cold Call." Nancy is a member of Toastmasters International.
如果你對Visual Studio非常熟悉, 我估計你只要10到15分鐘就能在你自己的機器上實現.
準備
- 確保已經安裝Visual Studio 2008 或 Visual Web Developer 2008 Express. Express 版本.
- 確保安裝了 SQL Server 2005 Express 并已啟動. 它通常在安裝VS 或VS Express的同時默認被安裝. 你也可以從這里下載安裝.
- 如果在你的機器上沒有Northwind.mdf, 可以從這篇文章的附件中下載.
為網站添加數據
首先我們要把數據庫添加到我們的工程中, 并創(chuàng)建必要的類以使用LINQ中的數據庫 (用Linq到SQL).注意, 你可以選擇跳過此步驟并創(chuàng)建你自己的LINQ查詢到其他數據庫上.
通過File -> New Web Site ... -> ASP.NET Web Site創(chuàng)建一個新的網站到本地目錄
把Northwind數據庫添加到網站的App_Data文件夾
1. 從本文附件中下載 Northwind.mdf 文件并保存到本地
硬盤上
2. 把這個文件拖放到解決方案管理器的App_Data文件夾中
通過OR設計器為Northwind創(chuàng)建LINQ到 SQL的類. Linq 到 SQL 類會被保存在一個.dbml 文件中并可以在可視的OR設計器中打開.
1. 在解決方案資源管理器中右鍵單擊網站結點, 選擇快捷菜單的Add New Item -> Linq To SQL Classes
2. 把"DataClasses.dbml" 重命名為"NorthwindDataClasses.dbml". (這樣做很重要, 以便在代碼和VS向導中找到這些類).
3.