亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于LINQ語言的學生信息管理系統(tǒng)三層體系結(jié)構(gòu)設(shè)計

        2012-11-13 07:24:44段班祥
        科技視界 2012年32期
        關(guān)鍵詞:數(shù)據(jù)庫信息學生

        段班祥

        (廣東科學技術(shù)職業(yè)學院計算機工程技術(shù)學院 廣東 珠海 519090)

        0 引言

        長期以來,開發(fā)社區(qū)形成以下格局:面向?qū)ο笈c數(shù)據(jù)訪問兩個領(lǐng)域長期分裂,各自為政,編程語言中的數(shù)據(jù)類型與數(shù)據(jù)庫中的數(shù)據(jù)類型形成兩套體系。LINQ(Language Integrated Query)即語言集成查詢,是一組語言特性和API,使得你可以使用統(tǒng)一的方式編寫各種查詢。查詢的對象包括XML、對象集合、SQL Server數(shù)據(jù)庫等等。LINQ主要包含以下三部分:LINQ to Objects、LINQ to XML、LINQ to ADO.NET。而 LINQ to ADO.NET 主要包含:LINQ to SQL、LINQ to DataSet、LINQ to Entities。

        三層結(jié)構(gòu)主要分為:表示層、業(yè)務(wù)邏輯層和數(shù)據(jù)訪問層。表示層主要功能是為用戶提供一種交互式操作界面;業(yè)務(wù)邏輯層是表示層與數(shù)據(jù)訪問層之間的橋梁,負責關(guān)鍵業(yè)務(wù)的處理和數(shù)據(jù)傳遞;數(shù)據(jù)訪問層實現(xiàn)對數(shù)據(jù)的保存和讀取操作。其主要優(yōu)點是當數(shù)據(jù)庫或用戶界面發(fā)生改變時不需要重新開發(fā),只做簡單調(diào)整即可。

        1 系統(tǒng)概述需求

        下面我們具體使用LINQ和三層結(jié)構(gòu)實現(xiàn)學生信息管理系統(tǒng),本系統(tǒng)開發(fā)工具使用Visual Studio 2010,開發(fā)語言使用C#,開發(fā)數(shù)據(jù)庫使用SQL Server 2008,系統(tǒng)開發(fā)的總體任務(wù)是實現(xiàn)信息關(guān)系的系統(tǒng)化、規(guī)范化和自動化。系統(tǒng)的結(jié)構(gòu)關(guān)系如圖1所示:

        系統(tǒng)的結(jié)構(gòu)關(guān)系圖是系統(tǒng)的總體功能分析,是在系統(tǒng)開發(fā)的總體任務(wù)的基礎(chǔ)上完成的。本項目中的學生信息系統(tǒng)需要完成的功能主要有:有關(guān)學籍等信息的輸入,包括學生基本信息、所在班級、所學課程和成績等;學生信息的查詢,包括學生基本信息、所在班級、已學課程、所有成績和獎罰信息等;學生信息(包括獎罰信息)修改;班級管理信息的輸入,包括班級設(shè)置、年級信息和班級輔導員等;班級管理信息的查詢;班級管理信息的修改;學?;菊n程信息的輸入;基本課程信息的修改;學生課程的設(shè)置和修改;學生成績信息的輸入;學生成績信息的修改;學生成績信息的查詢;學生成績的報表打?。挥脩舻卿浶畔⒌奶砑?、修改和刪除等;用戶登錄的密碼修改;數(shù)據(jù)庫文件的備份。

        圖1 系統(tǒng)結(jié)構(gòu)關(guān)系圖

        2 LINQ和三層結(jié)構(gòu)在學生信息管理系統(tǒng)中的應(yīng)用

        下面我們以“查詢所有學生的成績”模塊為例,說明如何具體使用LINQ和三層結(jié)構(gòu)進行設(shè)計。LINQ提供了LINQ to DATASETS、LINQ to ENTITIES、LINQ to SQL等組件訪問數(shù)據(jù)源,且允許做所有與數(shù)據(jù)庫相關(guān)的操作。在學生信息管理系統(tǒng)中,主要使用LINQ to SQL組件訪問數(shù)據(jù)庫,但是其他各組件訪問數(shù)據(jù)源方法與其類似,可將其作為參考。

        2.1 創(chuàng)建數(shù)據(jù)源MySchool.dbml

        在數(shù)據(jù)訪問層把LINQ to SQL類增加到項目中,自動創(chuàng)建一個空白的設(shè)計器,與此同時,創(chuàng)建相關(guān)的dbml.layout文件和 designer.cs文件,并附有服務(wù)器資源管理器的鏈接。打開服務(wù)器資源管理器,建立與MySchool數(shù)據(jù)庫的鏈接,將所需要的表直接拖放到MySchool.dbml文件的視圖面板中,該文件的類與MySchool數(shù)據(jù)庫表相對應(yīng),最后保存dbml文件,此時,dbml文件里已經(jīng)自動生成了包含相關(guān)的屬性、方法的DataContext類和實體類MySchool.dbml文件。

        2.2 查詢所有學生的成績功能的三層結(jié)構(gòu)設(shè)計

        2.2.1 數(shù)據(jù)訪問層ResultService設(shè)計

        查詢學生成績涉及到學生信息表Student、成績表Result、科目表Subject等三個表,我們使用LINQ查詢語句中的join子句進行聯(lián)接,同時利用左外聯(lián)接上一聯(lián)接的查詢結(jié)果上再進行一次查詢,具體語法如下:

        2.2.2 業(yè)務(wù)邏輯層ResultManager和表示層的設(shè)計查詢學生成績功能業(yè)務(wù)邏輯相對比較簡單,具體代碼如下:

        表示層窗體FrmSearchStu.cs中添加一個命令按鈕btnSearch、一個DataGridView控件dgvResult,編寫命令按鈕 “查詢所有學生的成績”單擊事件,實現(xiàn)查詢所有學生的成績。

        學生信息管理系統(tǒng)其他功能模塊訪問數(shù)據(jù)庫所使用的全部實體類代碼使用Visual Studio 2010集成開發(fā)工具的LINQto SQL設(shè)計器自動生成,僅此一項就可以節(jié)省許多復(fù)雜代碼的編寫工作;LINQ把對數(shù)據(jù)庫的操作轉(zhuǎn)化為對實體類的操作,使編程思路和程序邏輯更加明確;同時,代碼中LINQ to OBJECT的使用也節(jié)約了大量的代碼編寫工作。由于數(shù)據(jù)訪問層代碼全部采用LINQ來實現(xiàn),所以在編寫這些代碼時可以獲得編譯時的類型檢查和IntelliSense支持,提高了編程效率,大大節(jié)省了開發(fā)時間和成本。

        另外,在軟件開發(fā)過程中,我們使用了三層結(jié)構(gòu),當數(shù)據(jù)庫或用戶界面發(fā)生改變時不需要重新開發(fā),只做簡單調(diào)整即可,從而大大提高應(yīng)對客戶變化的能力以及自身的生產(chǎn)力。

        3 結(jié)束語

        本文通過學生信息管理系統(tǒng),分析了LINQ及LINQ TO SQL的概念和基本架構(gòu),對其核心技術(shù)和新特性進行了詳細的描述。結(jié)合三層結(jié)構(gòu),詳細介紹了LINQ數(shù)據(jù)庫訪問的基本方法,如查詢、修改、插入、刪除等操作。LINQ to SQL還全面支持事務(wù)、視圖、存儲過程,并且提供簡單的方式來集成數(shù)據(jù)驗證和業(yè)務(wù)邏輯規(guī)則。這些強大的功能和特性還有待在實際開發(fā)過程中繼續(xù)研究和應(yīng)用。

        [1]微軟公司.ADO.NET 3.5數(shù)據(jù)訪問程序開發(fā)[M].北京:人民郵電出版社,2010.

        [2]宋智軍,邱仲潘.Visual C#2010 從入門到精通[M].北京:電子工業(yè)出版社,2011.

        [3]牟永敏,丁媛,朱緒利,李良杰.基于LINQ技術(shù)的在線考試系統(tǒng)[J].北京信息科技大學學報,2011,26(2):19-24.

        [4]涂曙光.LINQ 和LINQ 的未來[J].Technical News,2009,2:17.

        猜你喜歡
        數(shù)據(jù)庫信息學生
        趕不走的學生
        訂閱信息
        中華手工(2017年2期)2017-06-06 23:00:31
        數(shù)據(jù)庫
        財經(jīng)(2017年2期)2017-03-10 14:35:35
        學生寫話
        學生寫的話
        數(shù)據(jù)庫
        財經(jīng)(2016年15期)2016-06-03 07:38:02
        數(shù)據(jù)庫
        財經(jīng)(2016年3期)2016-03-07 07:44:46
        數(shù)據(jù)庫
        財經(jīng)(2016年6期)2016-02-24 07:41:51
        展會信息
        中外會展(2014年4期)2014-11-27 07:46:46
        聰明的學生等
        午夜无码片在线观看影视| 国产精品麻豆一区二区三区 | 久久青青草原一区网站| 无码人妻久久久一区二区三区| 亚洲精品一区国产欧美| 少妇被粗大的猛进出69影院 | 中文国产日韩欧美二视频| 亚洲AV无码成人网站久久精品| 国产欧美日韩图片一区二区| 国产女主播大秀在线观看| 亚洲中文无码av永久| 变态 另类 欧美 大码 日韩| 人人做人人妻人人精| 国产9 9在线 | 免费| 狼人狠狠干首页综合网| 亚洲高清三区二区一区| 亚洲精品久久久久久久蜜桃| 日韩乱码人妻无码中文字幕视频| 久久6国产| 亚洲中文字幕第二十三页| 国产高清不卡二区三区在线观看| 精品熟人妻一区二区三区四区不卡 | 蜜桃视频羞羞在线观看| 久久久亚洲精品一区二区三区| 国产成人无码一区二区三区在线| 亚洲不卡无码高清视频| 少妇又色又爽又刺激的视频| 亚洲国产色婷婷久久精品| 亚洲热妇无码av在线播放 | 西西人体大胆视频无码| 日本大片在线一区二区三区| av在线观看一区二区三区| 毛片大全真人在线| 四虎成人精品国产一区a| 美腿丝袜视频在线观看| 成人乱码一区二区三区av| 日韩视频第二页| 国产成人精品cao在线| 大屁股流白浆一区二区三区| 激情综合丁香五月| 中文字幕精品无码一区二区|