Linq to SQL 下篇
上一篇博文主要是簡(jiǎn)單的介紹了使用自定義的一個(gè)對(duì)象映射模型來完成 Linq to SQL,
而這一篇博文則主要介紹使用由 VS 提供的設(shè)計(jì)器來實(shí)現(xiàn) Linq to SQL ,
說穿了,兩個(gè)在實(shí)質(zhì)上是根本沒有區(qū)別,
但是為何一個(gè)要自己寫代碼,一個(gè)有設(shè)計(jì)器呢,
其實(shí)原因就在 VS 幫你把你要寫的絕大部分代碼給完成了,
而您剩下的工作就是把數(shù)據(jù)表拖到 .dbml 中,也就是間接的講,
你做這拖放的工作只是告訴 VS 應(yīng)該如何生成代碼而已,
所以,說到底,只是減少了工作量,其他均沒變,
直接看一個(gè)實(shí)例好了,
因?yàn)檫@中簡(jiǎn)單的 Demo 實(shí)在是簡(jiǎn)單的讓人難過,
首先咯,
當(dāng)然是要建一個(gè) .aspx 頁(yè)面啊,
然后就是要添加一個(gè) Linq to SQL 的文件項(xiàng)目,也就是 .dbml 的文件,
然后就是把你要進(jìn)行讀取的數(shù)據(jù)庫(kù)中數(shù)據(jù)表從服務(wù)器資源管理器中拖到這個(gè) .dbml 中,
然后你便可以在 .aspx.cs 中完成你的簡(jiǎn)單的要命的代碼了,
然后再看一下 Student.dbml 中的截圖吧,
再看一下Student.dbml 自動(dòng)生成的代碼吧
可以觀察到,
其實(shí)設(shè)計(jì)器完成的代碼和我們上一篇博文中自定義的對(duì)象映射模型中的代碼是很相似的,
當(dāng)然咯,這里的還是要完成的詳細(xì)很多的,
由此可見,
使用自定義的映射模型和設(shè)計(jì)器生成的映射模型二者之間是沒有什么區(qū)別的,
再看一下 .aspx.cs 就 OK 了
using System;
using System.Linq;
namespace CSharpLanguage
{
??? public partial class Demo__9 : System.Web.UI.Page
??? {
??????? protected void Page_Load(object sender, EventArgs e)
??????? {
??????????? //建立由 Student.dbml 自動(dòng)生成的一個(gè)類 StudentDataContext 的實(shí)例
??????????? //這個(gè)實(shí)例實(shí)質(zhì)上就是一個(gè) DataContext
??????????? StudentDataContext student = new StudentDataContext();
??????????? var studentResult = from p in student.學(xué)生
??????????????????????????????? select new
??????????????????????????????? {
??????????????????????????????????? p.身份證號(hào)碼,
??????????????????????????????????? p.學(xué)生姓名,
??????????????????????????????????? p.性別,
??????????????????????????????????? p.電話號(hào)碼,
??????????????????????????????????? p.出生日期
??????????????????????????????? };
??????????? GridView1.DataSource = studentResult;
??????????? GridView1.DataBind();
??????? }
??? }
}
程序的結(jié)果也是非常簡(jiǎn)單的
以上就是使用設(shè)計(jì)器完成的 Linq to SQL 的完整范例了,
其實(shí)只有明白了上一篇文章才能掌握其中真正的運(yùn)作機(jī)制。
??????????????????????????? 2010—2—01
?
與50位技術(shù)專家面對(duì)面20年技術(shù)見證,附贈(zèng)技術(shù)全景圖總結(jié)
以上是生活随笔為你收集整理的Linq to SQL 下篇的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: [图示]做人36字诀:二)形象塑造 ——
- 下一篇: 关于MySQL的慢日志分析工具