第一篇:ASP。net的學習資源
如果你已經(jīng)有較多的面向?qū)ο箝_發(fā)經(jīng)驗,跳過以下這兩步:
第一步 掌握一門.NET面向?qū)ο笳Z言,C#或VB.NET 我強烈反對在沒系統(tǒng)學過一門面向?qū)ο?OO)語言的前提下去學ASP.NET。ASP.NET是一個全面向?qū)ο蟮募夹g(shù),不懂OO,那絕對學不下去!
第二步 對.NET Framework類庫有一定的了解 可以通過開發(fā)Windows Form應用程序來學習.NET Framework。ASP.NET是建構(gòu)在.NET Framework之上的技術(shù),你對.NET Framework了解得越深,學習ASP.NET就越快。舉個例子:下面簡單列出幾個對掌握ASP.NET非常重要的概念: 對象的內(nèi)存模型,委托,事件,多線程,程序集和應用程序域,安全模型.NET Framework當然還有許多其它的東西,但不理解與把握清楚上述這些東西,是很難真正把握ASP.NET的。出于急迫的心情與現(xiàn)實的考慮,不少人沒有扎實的面向?qū)ο蠡A(chǔ)就想直接學習ASP.NET,其結(jié)果只能是欲速則不達。在具備了OO基礎(chǔ)之后,以下是具體的學習ASP.NET技術(shù)步驟。
第一步:學習HTML與CSS
這并不需要去學一大堆的諸如Dreamweaver,F(xiàn)irework之類的各種網(wǎng)頁設(shè)計工具,關(guān)鍵是理解HTML網(wǎng)頁嵌套的block結(jié)構(gòu)與CSS的box模型。許多ASP.NET控件最后都必須轉(zhuǎn)化為HTML。而且,div+CSS是當前主流的網(wǎng)頁布局模型。學習這部分時,關(guān)鍵在于理解概念,而不需要將精力花在美化頁面的許多技巧上,那是網(wǎng)站美工的工作,不是程序員的工作。
第二步:學習JavaScript
JavaScript不是Java,它主要運行于瀏覽器端。可以完成許多工作,功能也很強大:比如它將客戶端網(wǎng)頁中的HTML元素看成一棵樹,可以編寫代碼訪問并修改樹節(jié)點,動態(tài)生成新的HTML代碼,從而達到動態(tài)修改網(wǎng)頁顯示特性的目的。
JavaScript在目前的網(wǎng)站開發(fā)中用得很多,非常重要。
另外,它也是目前非常流行的AJAX技術(shù)的基礎(chǔ)。
第三步:學習計算機網(wǎng)絡(luò)原理
找一本大學<計算機網(wǎng)絡(luò)>教材,重點看看它的有關(guān)互聯(lián)網(wǎng)的部分,了解一些域名解析和HTTP協(xié)議等知識。這是進行互聯(lián)網(wǎng)開發(fā)的理論基礎(chǔ)。
第四步:學習ASP.NET表示層技術(shù),會設(shè)計Web頁面
需要結(jié)合先前打好的面向?qū)ο蠹夹g(shù)的基礎(chǔ),至少掌握以下內(nèi)容:
(1)各種Web控件的使用方法,(2)理解信息在網(wǎng)頁中的傳送方式,比如Cookie,ViewState,Session等的使用。
(3)ASP.NET應用程序與網(wǎng)頁的生命周期,以及相關(guān)對象(比如httpcontext,response,request)的用途。
(4)ASP.NET實現(xiàn)事件驅(qū)動的內(nèi)幕
(5)自定義用戶控件
再次強調(diào)一下,沒有OO基礎(chǔ),很難掌握上述技術(shù),就只能被這些東東牽著鼻子走了,會很被動。
第五步 掌握數(shù)據(jù)庫技術(shù)
具體地說,要學習以下內(nèi)容:
(1)學會使用SQL Server 2005:不要求精通它的各種工具與管理配置技術(shù),但至少知道如何連接,如何建表,如何創(chuàng)建存儲過程
(2)學習ADO.NET,掌握使用代碼人工訪問數(shù)據(jù)庫(別用VS2005的向?qū)?的方法
(3)學習數(shù)據(jù)綁定控件的使用
第六步 理解多層架構(gòu)
這時,先前在OO學習階段涉及到的程序集與應用程序域等就派上用場了,現(xiàn)在,網(wǎng)站架構(gòu)大多采用多層架構(gòu):表示層、業(yè)務邏輯層、數(shù)據(jù)存取層以及數(shù)據(jù)庫本身。
可以先上網(wǎng)找一此多層架構(gòu)的資料看,再找一個現(xiàn)成的比較復雜的開源ASP.NET項目分析一下其架構(gòu)就差不多了。基本上都是一個套路,到處應用。
有的朋友問:學習架構(gòu)是不是必須學習設(shè)計模式。
我的看法是:不必!當然,你如果學習過設(shè)計模式,那當然更好。但在實際開發(fā)中,如果只想著機械地套用某種模式,反而起不到好的結(jié)果。我的觀點:在學習設(shè)計模式時要多思多悟,其思想就會漸漸地融入你的大腦,在真實的設(shè)計實踐中,忘掉所有的寫在書上的模式,一切從實際出發(fā),相信你的直覺,只要達到設(shè)計要求的方案就是可行的方案,事實上,你這樣做了之后,回過頭來再看,會發(fā)現(xiàn)你的設(shè)計往往暗合設(shè)計模式的理論。
第七步 學習XML與Web Service
先了解XML的基礎(chǔ)知識,找本講XML的書看一下就差不多了,然后,再學習Web Service。Web Service其實可類比為遠程方法調(diào)用(以XML格式表達的調(diào)用信息)。學 到了這里,如果你還有興趣,不妨再去看看SOA,不過SOA的資料都是理論與概念,看起來比較郁悶,而且離實際開發(fā)可能比較遠。所以,這是可選項。
第八步 學習AJAX
學習AJAX的主要目的是創(chuàng)建具有更豐富特性的Web表示層,而經(jīng)過前面七步的學習,到此再學習AJAX已水到渠成,所有的基礎(chǔ)都已具備,不會有太大的問題了。
在基礎(chǔ)未具備的前提下直接學AJAX,就象“浮沙之上筑高臺”,所以,將AJAX的學習次序安排在這里。
第九步 學習RIA技術(shù)
RIA:Rich internet application,可看成是將C/S與B/S優(yōu)點合二為一的嘗試。就具體技術(shù)來說,主要指微軟的Silverlight(WPF_E),畢竟前頭一路行來都是微軟路線。
網(wǎng)站教程
1、W3school2、網(wǎng)易學院3、51Cto4、博客園
5、MSDN
書籍(可下載)
1、ASP.NET 3.5 揭秘
2、ASP.ET 3.5開發(fā)大全
3、ASP.NET 4高級程序設(shè)計
4、AP.NET 4權(quán)威指南
5、ASP.NET 4從入門到精通.中文版.(美)George Shepherd(張大威譯)
6、SQL Server 2008編程入門經(jīng)典(第3版)
7、精通SQL Server 2005程序設(shè)計
第二篇:aspnet軟件開發(fā)學習總結(jié)
asp.net學習經(jīng)驗總結(jié)
通過幾個月的學習,我初步掌握ASP.NET開發(fā)平臺的基本知識,也通過老師的教學,完成了實際項目中的應用。由于大學學習中打下了較為扎實的C#基礎(chǔ),所以在選擇開發(fā)平臺學習時選擇了ASP.NET開發(fā)平臺。ASP.NET是基于網(wǎng)絡(luò)的交互開發(fā)平臺,可以通過微軟的C#語言以及Visual Studio 2010開發(fā)環(huán)境進行開發(fā)。
在學習ASP.NET之前,對網(wǎng)絡(luò)交互的開發(fā)平臺是非常陌生的。并不知道如何才能實現(xiàn)網(wǎng)站的開發(fā)和實現(xiàn)。通過ASP.NET的學習,我成功的使用WEB2.0和MVC2.0兩種架構(gòu)模式分別開發(fā)了資訊類網(wǎng)站和商務類網(wǎng)站。下面我將對開發(fā)過程的學習進行總結(jié)。
首先是資訊類網(wǎng)站的開發(fā),選擇使用了方便入手的web2.0架構(gòu)平臺。Web2.0以邏輯上的表示層、數(shù)據(jù)訪問層、業(yè)務邏輯層。通過三層架構(gòu)間函數(shù)的調(diào)用,可以增加系統(tǒng)的安全性,也可以提高代碼的可讀性。通過對資訊類網(wǎng)站的開發(fā)我逐漸熟悉了ASP.NET的開發(fā)過程以及交互模式,通過與ADO.NET的配合使用,完成了與數(shù)據(jù)庫的交互工作。半個月的時間初步完成了資訊類新聞網(wǎng)的開發(fā)工作,實現(xiàn)了用戶注冊、登錄,分欄目顯示圖文新聞信息,點擊查看詳情。后臺實現(xiàn)了對用戶角色的管理以及新聞的管理、編輯、上傳工作。較完整的理解了ASP.NET中WEB2.0架構(gòu)的基本開發(fā)過程。對三層架構(gòu)有了初步的理解和認識。接下來的時間我學習了使用MVC2.0開發(fā)商務網(wǎng)站。MVC同樣是三層架構(gòu)模型。與WEB開發(fā)架構(gòu)的主要區(qū)別在于,MVC是物理上的三層架構(gòu),而WEB是邏輯上的三層架構(gòu)。MVC解放了路由機制,使得頁面的交互速度大幅提高。通過訪問controler層,調(diào)用DAL層函數(shù),使用MODEL層存儲數(shù)據(jù),使用DBHELPER類中的通用方法,實現(xiàn)參數(shù)的傳遞,以及與數(shù)據(jù)庫的交互,最終將參數(shù)返回到VIEW層,實現(xiàn)頁面的顯示。MVC架構(gòu)的開發(fā)優(yōu)勢在于,給了程序員絕對的自由,可以通過JS、JQ寫出各種需要的顯示效果,頁面的可讀性和自由性也大大提高。同時,MVC也兼顧了WEB的優(yōu)點,方便了代碼的模塊化傳遞,增加代碼的復用性,提高代碼的可讀性。通過一個半月的開發(fā)工作,我成功實現(xiàn)了商務網(wǎng)站的基本功能,實現(xiàn)了支付接口,前臺的注冊登錄,商品展示、購買。后臺的訂單管理,用戶管理以及角色授權(quán)等功能。
通過學習ASP.NET我基本熟悉了網(wǎng)站的開發(fā)模式、架構(gòu)以及開發(fā)流程,通過實際項目的演練,也讓我能夠?qū)⒋髮W學習中的理論運用到實踐?,F(xiàn)階段所需要的就是繼續(xù)加深C#的學習深度,了解JS、JQ庫的寫作規(guī)范,爭取能夠盡早使用自己編寫的JS庫完成個人網(wǎng)站的建設(shè)開發(fā)工作。很感謝成都華育國際的老師和同學在這幾個月時間里給我的幫助,讓我能夠在ASP.NET的開發(fā)中達到入門水平。希望通過自身的努力,將自己的技術(shù)進一步提高。
第三篇:ASPNET留言板
一、留言板的簡介(一)留言板
留言板是一種電子便簽管理系統(tǒng),是用 ASP 或其它腳本語言編寫的網(wǎng)絡(luò)應用程序。在網(wǎng)絡(luò)用戶交流中起很大的作用, 每個人都可以將他的資料和要求等信息保留在頁面上,以供他人觀看。留言板供其他網(wǎng)友給自己留言,或者臨時存放自己的感受。留言操作相對簡單, 在您進入網(wǎng)站后, 進入任何一個留言板貨社區(qū)均可以看到有輸入框,輸入后提交即可。留言板提供完備的信息發(fā)布功能,在網(wǎng)絡(luò)用戶交流中也有很大的作用。而這個留言板僅僅是簡單的留言和管理員對留言板進行設(shè)置和進行回復、刪除管理的工具。該留言板簡單但實用, 而且具備了大多數(shù)留言板的基本功能。
二、需求分析(一)需求分析
要求系統(tǒng)具有良好的人機界面, 能夠滿足用戶的留言要求, 能夠讓訪客在查看留言內(nèi)容后,對留言的內(nèi)容發(fā)表自己的意見,管理員能夠?qū)崿F(xiàn)對留言的回復及刪除操作, 網(wǎng)站最大限度地實現(xiàn)維護和易操作性,網(wǎng)站運行穩(wěn)定、安全可靠。(二)設(shè)計目標
界面設(shè)計美觀友好,使用靈活便捷,數(shù)據(jù)存儲安全可靠,提供留言查看、留言發(fā)表、留言回復、留言刪除功能,系統(tǒng)最大限度地實現(xiàn)易維護和易操作性。(三)功能分析
可以按照發(fā)言時間的先后順序,留言板自動排序,友好簡潔的管理界面,便于管理員維護留言板,管理員具有回復和刪除留言的權(quán)限,具有頁數(shù)跳轉(zhuǎn)功能系統(tǒng)功能模塊圖,三、系統(tǒng)功能設(shè)計
在編寫留言系統(tǒng)前,首先需要確定留言系統(tǒng)所需要的一些功能模塊和適用場景,例如留言系統(tǒng)是以何種形式呈現(xiàn)給用戶, 如何對這些留言進行管理等等,這些功能都是需要在開發(fā)初級進行設(shè)計和規(guī)劃的。后臺主頁,后臺主頁面, 后臺管理,后臺留言信息管理,后臺會員。前臺主頁,留言系統(tǒng)網(wǎng)站登陸界面,主頁,留言動態(tài)。登陸界面主要有,注冊、登陸、看帖、發(fā)帖。(一)主要功能 ,、留言網(wǎng)站用戶登陸界面功能
當用戶訪問 W eb 頁面時需要進行登錄進入留言板網(wǎng)站界面,用戶不進行登錄就不能夠進入系統(tǒng),也不能夠分享相應的信息。管理員可以配置是否需要進行登錄才能查看留言板網(wǎng)站的內(nèi)容, 如果管理員設(shè)置需要登錄查看,則用戶不登陸就不能夠查看相應的內(nèi)容。
2、用戶主頁功能
用戶登錄之后就可以看到留言板系統(tǒng)的內(nèi)容。
3、用戶注冊功能
訪客需要注冊賬戶后才能夠看帖,發(fā)帖。
4、用戶看帖功能
用戶登錄留言板網(wǎng)站后,就可以查看到網(wǎng)站內(nèi)的留言貼。
5、用戶發(fā)帖功能
用戶登錄留言板網(wǎng)站后,就可以根據(jù)其它留言貼而發(fā)帖。
6、管理員登錄功能
為了方便管理留言板系統(tǒng),管理員進行對留言板管理。
7、回復功能
用戶對留言進行回復(二)數(shù)據(jù)庫設(shè)計 ASP.NET 留言板系統(tǒng)在數(shù)據(jù)庫上并不是很困難, 但是也不會簡單,其中包含了很多的功能, 這些功能能夠讓用戶在網(wǎng)站上分享自己的見解、意見、聊天等,所以在數(shù)據(jù)庫的設(shè)計上, 其表的數(shù)量和表與表之間的關(guān)系也原有的模塊或系統(tǒng)更加復雜。
1、數(shù)據(jù)表的創(chuàng)建
創(chuàng)建表可以通過 SQL Server 進行創(chuàng)建
2、事務表 Admin Member Info
3、公告數(shù)據(jù)
公告數(shù)據(jù)可以不使用數(shù)據(jù)庫進行存儲,在這里可以使用 txt 文檔進行數(shù)據(jù)存儲, 這樣不僅可以減輕數(shù)據(jù)庫服務器的壓力, 也能夠增加公告中文本的可擴展性。注意,對于公告的數(shù)據(jù)直接存儲在 txt 文檔中,當首頁需要調(diào)用公告時,可以直接從 txt 文檔中讀取數(shù)據(jù)進行 HTML 呈現(xiàn)。
(四)設(shè)計技術(shù)
1、ASP Microsoft Active Server Pages 即我們所稱的 ASP,其實是一套微軟開發(fā)的服務器端腳本環(huán)境。Active Server Page 是創(chuàng)建動態(tài)網(wǎng)頁的一個很好的工具, 它起一種編程語言的作用,可以利用它編寫動態(tài)產(chǎn)生 HTML 的程序代碼。而且 ASP 也是服務器端腳本環(huán)境,可以用來創(chuàng)建交互式 WEB 頁并建立強大的的 Web 應用程序。因此,只要用戶瀏覽 Web 站點并請求一個 ASP 頁,Web 服務器就可以處理相應的 ASP 代碼,生成 HTML 代碼,然后將它傳遞到用戶瀏覽器并顯示出網(wǎng)頁。ASP 內(nèi)含于 IIS4.0 和 5.0 之中,通過 ASP 我們可以結(jié)合 HTML 網(wǎng)頁、ASP 指令和 ActiveX 元件建立動態(tài)、交互且高效的 WEB服務器應用程序。有了 ASP 就不必擔心客戶的瀏覽器是否能運行所編寫的代碼, 因為所有的程序都將在服務器端執(zhí)行, 包括所有嵌在普通HTML 中的腳本程序。當程序執(zhí)行完畢后,服務器僅將執(zhí)行的結(jié)果返回給客戶瀏覽器, 這樣也就減輕了客戶端瀏覽器的負擔, 大大提高了交互的速度。
2、SQL SQL 全稱是“結(jié)構(gòu)化查詢語言(Structured Query Language)” ,最早的是 IBM 的圣約瑟研究實驗室為其關(guān)系數(shù)據(jù)庫管理系統(tǒng) SYSTEM R開發(fā)的一種查詢語言,它的前身是 SQUARE 語言。SQL 語言結(jié)構(gòu)簡潔,功能強大,簡單易學,所以自從 IBM 公司 1981 年推出以來,SQL 語言,得到了廣泛的應用。如今無論是像 Oracle ,Sybase, SQL Server這些大型的數(shù)據(jù)庫管理系統(tǒng),還是像 Visual Foxporo, PowerBuilder這些微機上常用的數(shù)據(jù)庫開發(fā)系統(tǒng),都支持 SQL 語言作為查詢語言。
3、IIS IIS 是 Internet Information Server 的縮寫,它是微軟公司主推的服務器,最新的版本是 Windows2003 里面包含的 IIS 6,IIS 與WindowNT Server 完全集成在一起,因而用戶能夠利用 Windows NTServer 和 NTFS,NT File SystemNT 的文件系統(tǒng),內(nèi)置的安全特性,建立強大,靈活而安全的 Internet 和 Intranet 站點。IIS 支持 HTTP,Hypertext Transfer Protocol,超文本傳輸協(xié)議, ,FTP,Fele Transfer Protocol,文件傳輸協(xié)議,以及 SMTP 協(xié)議,通過使用 CGI 和 ISAPI,IIS 可以得到高度的擴展。
四、系統(tǒng)界面和代碼實現(xiàn)
1、用戶登錄界面, 代碼如下, u s i n g
S y s t e m.D a t a.S q l C l i e n t;p u b l i c
p a r t i a l
c l a s s
L o g i n
:
S y s t e m.W e b.U I.P a g e { p r o t e c t e d
v o i d
P a g e _ L o a d(o b j e c t
s e n d e r ,E v e n t A r g s
e)
{
} p r o t e c t e d
v o i d
B t n L o g i n _ C l i c k(o b j e c t
s e n d e r ,E v e n t A r g s
e){
i f
(T x t N a m e.T e x t
= =
“ ”
|
T x t P a s s.T e x t
= =
“ ”)
{ L a b e l 1.T e x t
=
“ 必須輸入帳號和密碼,”;r e t u r n;
} e l s e
{ S q l C o n n e c t i o n
c o n n
=
n e w
S q l C o n n e c t i o n(“ D a t a
S o u r c e =.;I n i t i a l C a t a l o g = B B S;I n t e g r a t e d
S e c u r i t y = t r u e ”);c o n n.O p e n();S q l C o m m a n d
C m d
=
n e w
S q l C o m m a n d();
C m d.C o n n e c t i o n
=
c o n n;C m d.C o m m a n d T e x t
=
“ s e l e c t
[ 用戶名]
f r o m
[ m e m b e r ]
w h e r e
[ 用戶名] = ' ”
+
T x t N a m e.T e x t +
“ '
a n d
[ 密碼] = ' ”
+
T x t P a s s.T e x t
+
“ ' ”;S q l D a t a R e a d e r
d r
=
C m d.E x e c u t e R e a d e r();i f
(d r.R e a d()){ S e s s i o n [ “ m e m ” ]
=
T x t N a m e.T e x t;
/ / 登錄成功后記下該用戶昵稱,以便后續(xù)功能使用
L a b e l 1.T e x t
=
“ 登錄成功,”;T x t N a m e.T e x t
=
“ ”;T x t N a m e.E n a b l e d
=
f a l s e;T x t P a s s.T e x t
=
“ ”;T x t P a s s.E n a b l e d
=
f a l s e;d r.C l o s e();
} e l s e {
L a b e l 1.T e x t
=
“ 昵稱不存在或密碼不對,”;
} c o n n.C l o s e();
}
} p r o t e c t e d
v o i d
L i n k B u t t o n 1 _ C l i c k(o b j e c t
s e n d e r ,E v e n t A r g s
e){
R e s p o n s e.R e d i r e c t(“ g u a n l i.a s p x ”);
} }
2、用戶注冊界面, 代碼如下,u s i n g
S y s t e m.D a t a.S q l C l i e n t;p u b l i c
p a r t i a l
c l a s s
_ D e f a u l t
:
S y s t e m.W e b.U I.P a g e
{
p r o t e c t e d
v o i d
P a g e _ L o a d(o b j e c t
s e n d e r ,E v e n t A r g s
e)
{
} p u b l i c
b o o l
C h e c k I n p u t(){
i f
(T x t N a m e.T e x t
= =
“ ”
|
T x t P a s s.T e x t
= =
“ ”
| T x t P a s s C o n f.T e x t
= =
“ ”
|
T x t E m a i l.T e x t
= =
“ ”){ L a b e l 1.T e x t
=
“ 你輸入的信息不正確,請重新輸入,”;T x t N a m e.T e x t
=
“ ”;T x t P a s s.T e x t
=
“ ”;T x t P a s s C o n f.T e x t
=
“ ”;T x t E m a i l.T e x t
=
“ ”;r e t u r n
f a l s e;
} e l s e {
i f
(T x t P a s s.T e x t
!=
T x t P a s s C o n f.T e x t){
L a b e l 1.T e x t
=
“ 你兩次輸入的密碼不同,請重新輸入,”;T x t N a m e.T e x t
=
“ ”;T x t P a s s.T e x t
=
“ ”;T x t P a s s C o n f.T e x t
=
“ ”;T x t E m a i l.T e x t
=
“ ”;r e t u r n
f a l s e;
}
} r e t u r n
t r u e;
} p r o t e c t e d
v o i d
B t n R e g _ C l i c k(o b j e c t
s e n d e r ,E v e n t A r g s
e){ i f
(C h e c k I n p u t()){ S q l C o n n e c t i o n
c o n n
=
n e w
S q l C o n n e c t i o n(“ D a t a
S o u r c e =.;I n i t i a l
C a t a l o g = B B S;I n t e g r a t e d S e c u r i t y = t r u e ”);c o n n.O p e n();/ / 檢查用戶是否已存在
S q l C o m m a n d
C m d
=
n e w
S q l C o m m a n d();C m d.C o n n e c t i o n
=
c o n n;C m d.C o m m a n d T e x t
=
“ s e l e c t
[ 用戶名]
f r o m
m e m b e r ”;S q l D a t a R e a d e r
d r
=
C m d.E x e c u t e R e a d e r();w h i l e
(d r.R e a d()){ i f
(d r.G e t S t r i n g(0)
= =
T x t N a m e.T e x t){
L a b e l 1.T e x t
=
T x t N a m e.T e x t
+
“ 已經(jīng)存在,請你選擇另外的昵稱,”;c o n n.C l o s e();r e t u r n;
}
} c o n n.C l o s e();s t r i n g
S q l S t r;S q l S t r
=
“ I n s e r t
i n t o
m e m b e r([ 用戶名] , [ 密碼] , [ 電子郵件])
v a l u e s(' ”
+
T x t N a m e.T e x t +
“ ' , ' ”
+
T x t P a s s.T e x t
+
“ ' , ' ”
+
T x t E m a i l.T e x t
+
“ ')”;C m d.C o m m a n d T e x t
=
S q l S t r;c o n n.O p e n();C m d.E x e c u t e N o n Q u e r y();c o n n.C l o s e();L a b e l 1.T e x t
=
“ 恭喜你,你已注冊成功,”;}
}
p r o t e c t e d
v o i d
B t n C a n c e l _ C l i c k(o b j e c t
s e n d e r ,E v e n t A r g s
e){
R e s p o n s e.W r i t e(“ < s c r i p t
l a n g u a g e = j a v a s c r i p t > a l e r t(' 用戶已取消注冊,');< / s c r i p t > ”);
} p r o t e c t e d
v o i d
L i n k B u t t o n 1 _ C l i c k(o b j e c t
s e n d e r ,E v e n t A r g s
e){
R e s p o n s e.R e d i r e c t(“ g u a n l i.a s p x ”);
} } 3、看帖界面, 代碼如下, u s i n g
S y s t e m.D a t a.S q l C l i e n t;p u b l i c
p a r t i a l
c l a s s
S h o w
:
S y s t e m.W e b.U I.P a g e {
p r o t e c t e d
v o i d
P a g e _ L o a d(o b j e c t
s e n d e r ,E v e n t A r g s
e){ S q l C o n n e c t i o n
c o n n
=
n e w
S q l C o n n e c t i o n(“ D a t a
S o u r c e =.;I n i t i a l
C a t a l o g = B B S;I n t e g r a t e d S e c u r i t y = t r u e ”);S q l D a t a A d a p t e r
a d a p t e r
=
n e w
S q l D a t a A d a p t e r(“ s e l e c t
*
f r o m
[ I n f o ] ” ,c o n n);D a t a S e t
d s
=
n e w
D a t a S e t();a d a p t e r.F i l l(d s ,“ I n f o T a b l e ”);G r i d V i e w 1.D a t a S o u r c e
=
d s.T a b l e s [ 0 ].D e f a u l t V i e w;G r i d V i e w 1.D a t a B i n d();} p r o t e c t e d
v o i d
G r i d V i e w 1 _ P a g e I n d e x C h a n g i n g(o b j e c t
s e n d e r ,G r i d V i e w P a g e E v e n t A r g s
e){
G r i d V i e w 1.P a g e I n d e x
=
e.N e w P a g e I n d e x;G r i d V i e w 1.D a t a B i n d();} p r o t e c t e d
v o i d
B u t t o n 1 _ C l i c k(o b j e c t
s e n d e r ,E v e n t A r g s
e){ R e s p o n s e.R e d i r e c t
(“ L o g i n.a s p x ”);} p r o t e c t e d
v o i d
L i n k B u t t o n 1 _ C l i c k(o b j e c t
s e n d e r ,E v e n t A r g s
e){
R e s p o n s e.R e d i r e c t(“ g u a n l i.a s p x ”);} }
4、發(fā)帖界面, 代碼如下, u s i n g
S y s t e m.D a t a.S q l C l i e n t;p u b l i c
p a r t i a l
c l a s s
S e n d
:
S y s t e m.W e b.U I.P a g e {
p r o t e c t e d
v o i d
P a g e _ L o a d(o b j e c t
s e n d e r ,E v e n t A r g s
e){
} p r o t e c t e d
v o i d
B t n S e n d _ C l i c k(o b j e c t
s e n d e r ,E v e n t A r g s
e){
L b l C a u t i o n.T e x t
=
“ 你必須輸入主題和內(nèi)容,”;R e t u r n;
} S q l C o n n e c t i o n
c o n n
=
n e w
S q l C o n n e c t i o n(“ D a t a
S o u r c e =.;I n i t i a l
C a t a l o g = B B S;I n t e g r a t e d S e c u r i t y = t r u e ”);s t r i n g
S q l S t r;S q l S t r
=
“ I n s e r t
i n t o
i n f o(主題, 張貼者昵稱, 內(nèi)容, 張貼時間, 回復編號)
”;S q l S t r
=
S q l S t r
+
“
v a l u e s(' ”
+
T x t S u b j e c t.T e x t
+
“ ' , ' ”
+
S e s s i o n [ “ m e m ” ]
+
“ ' , ' ”
+ T x t C o n t e n t.T e x t;S q l S t r
=
S q l S t r
+
“ ' , ' ”
+
D a t e T i m e.N o w
+
“ ' , ' 0 ')”;S q l C o m m a n d
C m d
=
n e w
S q l C o m m a n d(S q l S t r ,c o n n);c o n n.O p e n();C m d.E x e c u t e N o n Q u e r y();c o n n.C l o s e();L b l C a u t i o n.T e x t
=
“ 已成功發(fā)帖,”;T x t S u b j e c t.T e x t
=
“ ”;T x t C o n t e n t.T e x t
=
“ ”;
} p r o t e c t e d
v o i d
M e n u 1 _ L o a d(o b j e c t
s e n d e r ,E v e n t A r g s
e)
{
} p r o t e c t e d
v o i d
L i n k B u t t o n 1 _ C l i c k(o b j e c t
s e n d e r ,E v e n t A r g s
e){
R e s p o n s e.R e d i r e c t(“ g u a n l i.a s p x ”);
} } 5、管理員登錄界面, 代碼如下, u s i n g
S y s t e m.D a t a.S q l C l i e n t;p u b l i c
p a r t i a l
c l a s s
g u a n l i
:
S y s t e m.W e b.U I.P a g e {
p r o t e c t e d
v o i d
P a g e _ L o a d(o b j e c t
s e n d e r ,E v e n t A r g s
e){
} p r o t e c t e d
v o i d
B u t t o n 1 _ C l i c k(o b j e c t
s e n d e r ,E v e n t A r g s
e){
i f
(T e x t B o x 1.T e x t
= =
“ ”
|
T e x t B o x 2.T e x t
= =
“ ”){
L a b e l 1.T e x t
=
“ 必須輸入帳號和密碼,”;r e t u r n;
} e l s e { S q l C o n n e c t i o n
c o n n
=
n e w
S q l C o n n e c t i o n(“ D a t a
S o u r c e =.;I n i t i a l C a t a l o g = B B S;I n t e g r a t e d
S e c u r i t y = t r u e ”);c o n n.O p e n();
S q l C o m m a n d
C m d
=
n e w
S q l C o m m a n d();C m d.C o n n e c t i o n
=
c o n n;C m d.C o m m a n d T e x t
=
“ s e l e c t
[ 用戶名]
f r o m
[ a d m i n ]
w h e r e
[ 用戶名] = ' ”
+
T e x t B o x 1.T e x t +
“ '
a n d
[ 密碼] = ' ”
+
T e x t B o x 2.T e x t
+
“ ' ”;S q l D a t a R e a d e r
d r
=
C m d.E x e c u t e R e a d e r();i f
(d r.R e a d()){
S e s s i o n [ “ m e m ” ]
=
T e x t B o x 1.T e x t;
/ / 登錄成功后記下該用戶昵稱,以便后續(xù)功能使用
L a b e l 1.T e x t
=
“ 登錄成功,”;T e x t B o x 1.T e x t
=
“ ”;T e x t B o x 1.E n a b l e d
=
f a l s e;T e x t B o x 2.T e x t
=
“ ”;T e x t B o x 2.E n a b l e d
=
f a l s e;d r.C l o s e();R e s p o n s e.R e d i r e c t(“ S h o w A r t i c l e.a s p x ”);}
e l s e {
L a b e l 1.T e x t
=
“ 昵稱不存在或密碼不對,”;
} c o n n.C l o s e();
}
} p r o t e c t e d
v o i d
B u t t o n 2 _ C l i c k(o b j e c t
s e n d e r ,E v e n t A r g s
e){
R e s p o n s e.W r i t e(“ < s c r i p t
l a n g u a g e = j a v a s c r i p t > a l e r t(' 用戶已取消注冊,');< / s c r i p t > ”);
} p r o t e c t e d
v o i d
L i n k B u t t o n 1 _ C l i c k(o b j e c t
s e n d e r ,E v e n t A r g s
e){
R e s p o n s e.R e d i r e c t(“ g u a n l i.a s p x ”);} p r o t e c t e d
v o i d
B u t t o n 3 _ C l i c k(o b j e c t
s e n d e r ,E v e n t A r g s
e){
R e s p o n s e.R e d i r e c t(“ L o g i n.a s p x ”);} }
6、顯示發(fā)帖信息界面, 代碼如下,u s i n g
S y s t e m.D a t a.S q l C l i e n t;p u b l i c
p a r t i a l
c l a s s
S h o w A l l
:
S y s t e m.W e b.U I.P a g e {
p r o t e c t e d
v o i d
P a g e _ L o a d(o b j e c t
s e n d e r ,E v e n t A r g s
e){ S q l C o n n e c t i o n
c o n n
=
n e w
S q l C o n n e c t i o n(“ D a t a
S o u r c e =.;I n i t i a l
C a t a l o g = B B S;I n t e g r a t e d S e c u r i t y = t r u e ”);S q l C o m m a n d
C m d
=
n e w
S q l C o m m a n d(“ s e l e c t
*
f r o m
[ I n f o ]
w h e r e
I D = ”
+ R e q u e s t.Q u e r y S t r i n g [ “ i d ” ] ,c o n n);c o n n.O p e n();S q l D a t a R e a d e r
o b j = C m d.E x e c u t e R e a d e r();w h i l e
(o b j.R e a d()){
L b l N a m e.T e x t
=
o b j.G e t V a l u e(2).T o S t r i n g();L b l D a t e.T e x t
=
o b j.G e t V a l u e(4).T o S t r i n g();T x t S u b j e c t.T e x t
=
o b j.G e t V a l u e(1).T o S t r i n g();T x t C o n t e n t.T e x t
=
o b j.G e t V a l u e(3).T o S t r i n g();
} o b j.C l o s e();c o n n.C l o s e();s t r i n g
s q l
=
“ S e l e c t
*
F r o m
[ i n f o ]
w h e r e
回復編號= ' ”
+
R e q u e s t.Q u e r y S t r i n g [ “ i d ” ]
+
“ ' ”;S q l D a t a A d a p t e r
a d a p t e r
=
n e w
S q l D a t a A d a p t e r(s q l ,c o n n);D a t a S e t
d s
=
n e w
D a t a S e t();a d a p t e r.F i l l(d s ,“ R e p l y ”);D a t a L i s t 1.D a t a S o u r c e
=
d s.T a b l e s [ 0 ].D e f a u l t V i e w;D a t a L i s t 1.D a t a B i n d();
} p r o t e c t e d
v o i d
L i n k B u t t o n 1 _ C l i c k(o b j e c t
s e n d e r ,E v e n t A r g s
e){
R e s p o n s e.R e d i r e c t(“ g u a n l i.a s p x ”);} }
7、回復界面, 代碼如下, u s i n g
S y s t e m.D a t a.S q l C l i e n t;p u b l i c
p a r t i a l
c l a s s
S h o w A r t i c l e
:
S y s t e m.W e b.U I.P a g e {
p r o t e c t e d
v o i d
P a g e _ L o a d(o b j e c t
s e n d e r ,E v e n t A r g s
e){
s t r i n g
s t r
=
“ 1 2 3 4 ”;S q l C o n n e c t i o n
c o n n
=
n e w
S q l C o n n e c t i o n(“ D a t a
S o u r c e =.;I n i t i a l
C a t a l o g = B B S;I n t e g r a t e d S e c u r i t y = t r u e ”);S q l C o m m a n d
C m d
=
n e w
S q l C o m m a n d(“ s e l e c t
*
f r o m
[ i n f o ]
w h e r e
[ 主題] = ”
+
s t r ,c o n n);c o n n.O p e n();S q l D a t a R e a d e r
o b j
=
C m d.E x e c u t e R e a d e r();w h i l e
(o b j.R e a d()){
L b l N a m e.T e x t
=
o b j.G e t V a l u e(2).T o S t r i n g();L b l D a t e.T e x t
=
o b j.G e t V a l u e(4).T o S t r i n g();T x t S u b j e c t.T e x t
=
o b j.G e t V a l u e(1).T o S t r i n g();T x t C o n t e n t.T e x t
=
o b j.G e t V a l u e(3).T o S t r i n g();}
c o n n.C l o s e();} p r o t e c t e d
v o i d
B t n R e p l y _ C l i c k(o b j e c t
s e n d e r ,E v e n t A r g s
e){
i f
(T x t R e.T e x t
= =
“ ”){
L b l C a u t i o n.T e x t
=
“ 請輸入回帖內(nèi)容,”;
} e l s e {
s t r i n g
S q l S t r;S q l S t r
=
“ I n s e r t
i n t o
i n f o([ 主題] , [ 張貼者昵稱] , [ 內(nèi)容] , [ 張貼時間] , [ 回復編號])
”;S q l S t r
=
S q l S t r
+
“
v a l u e s(' R e : ”
+
T x t S u b j e c t.T e x t +
“ ' , ' ”
+
S e s s i o n [ “ m e m ” ]
+ “ ' , ' ”
+
T x t R e.T e x t;S q l S t r
=
S q l S t r
+
“ ' , ' ”
+
D a t e T i m e.N o w
+
“ ' , ' ”
+
R e q u e s t.Q u e r y S t r i n g [ “ I D ” ]
+
“ ')”;S q l C o n n e c t i o n
c o n n
=
n e w
S q l C o n n e c t i o n(“ D a t a
S o u r c e =.;I n i t i a l C a t a l o g = B B S;I n t e g r a t e d
S e c u r i t y = t r u e ”);S q l C o m m a n d
C m d
=
n e w
S q l C o m m a n d(S q l S t r ,c o n n);c o n n.O p e n();C m d.E x e c u t e N o n Q u e r y();c o n n.C l o s e();L b l C a u t i o n.T e x t
=
“ 已成功回帖,”;} } p r o t e c t e d
v o i d
B t n A l l R e _ C l i c k(o b j e c t
s e n d e r ,E v e n t A r g s
e){
R e s p o n s e.R e d i r e c t(“ S h o w A l l.a s p x ? i d = ”
+
R e q u e s t.Q u e r y S t r i n g [ “ i d ” ]);} p r o t e c t e d
v o i d
B u t t o n 1 _ C l i c k(o b j e c t
s e n d e r ,E v e n t A r g s
e){
R e s p o n s e.R e d i r e c t(“ L o g i n.a s p x ”);
} p r o t e c t e d
v o i d
L i n k B u t t o n 1 _ C l i c k(o b j e c t
s e n d e r ,E v e n t A r g s
e){
R e s p o n s e.R e d i r e c t(“ g u a n l i.a s p x ”);
} }
8、Menu 控件,五、總結(jié)
上述就是我們組留言板管理系統(tǒng)的全部設(shè)計和開發(fā)過程。通過這次實訓設(shè)計, 使我們感到高科技、新知識的力量, 讓我們知道我們還有很多知識需要學習,這是我們第一次運用 ASP.NET 做的完整的設(shè)計程序, 加之水平有限, 設(shè)計中難免有不當之處, 還請老師給予批評、指正。
第四篇:aspnet總結(jié)
學習ASP.NET,我是從VFP、ASP轉(zhuǎn)型而來的。
我學習的ASP.NET,走的是asp.net(c#)+Sql2005這條路。
之前學習VFP時,就對數(shù)據(jù)庫是了深刻的了解,對CS結(jié)構(gòu)的項目有了大概的認識與體驗。如今學習ASP.NET,速度要比他人快得多,至少更容易上手。
關(guān)于這方面的學習,我的重點放在BS結(jié)構(gòu)的網(wǎng)站項目上,我不太喜歡CS結(jié)構(gòu)的程序;因為我覺得,CS結(jié)構(gòu)的程序,要想讓別人看到,除非別人知道并擁有您的軟件,或者購買您的CS程序,否則,沒有人會知道您的程序的。
但是,BS結(jié)構(gòu)的網(wǎng)站程序,就不同了,您可以將您的網(wǎng)站發(fā)布到互聯(lián)網(wǎng)上,這樣,就可以讓很多的陌生的不知名的可遇不可求的網(wǎng)友來訪問您的網(wǎng)站,從而,他們就會知道您的網(wǎng)站程序,這更能充分體現(xiàn)出一個程序的價值所在。
這兩者的區(qū)別就在于,CS結(jié)構(gòu)的程序,必須安裝到任何一個客戶端才能使用;而BS結(jié)構(gòu)的程序,只需要配置好服務器,連網(wǎng)的計算機,在隨時隨地都能打開您的網(wǎng)站;這不僅省去了安裝的麻煩,同時更有效的解決了時間和空間的限制、打破資源的局限性,讓網(wǎng)站程序的價值得以充分體現(xiàn)出來。
之前我學習ASP,是通過dw學習的,當時,就覺得非常麻煩,尤其是html標簽文件與ASP代碼,是同放在一個文件里面的,這就產(chǎn)生了大量的冗余的代碼,修改的時候覺得非常麻煩,即不容易維護、更不容易修改。看上去,眼睛都花了。
還好,轉(zhuǎn)向ASP.NET的學習,正符合自己的個性思維,在學習的過程中,如魚得水,僅需要學習一下基本的操作和語法,其它基本沒有障礙。
學習了ASP.NET的代碼分離模式與無刷新技術(shù),認識到了網(wǎng)站的真正的結(jié)構(gòu),最終才對BS結(jié)構(gòu)的網(wǎng)站程序有了進一步的認識。
同時,對SQL大型數(shù)據(jù)庫的認識才有了質(zhì)的改變。
第五篇:ASPNET教學大綱(本站推薦)
《ASP.NET數(shù)據(jù)庫編程》教學大綱
課程編號:
開課部門:
適用專業(yè):軟件專業(yè)
總學時:90(其中理論45學時,實踐45學時)
第一部分
一、課程的性質(zhì)和任務
本課程主要以微軟的 ASP.NET 程序設(shè)計為基礎(chǔ)進行 Web 系統(tǒng)構(gòu)建和網(wǎng)絡(luò)程序設(shè)計開發(fā)。Active Server Pages . NET(ASP . NET)提供了迄今為止最高級的 Web 開發(fā)平臺。是建立在.NET 框架的通用語言運行環(huán)境(Common Language Runtime,CLR)上的編程框架,可用于在服務器上生成功能強大的 Web 應用程序。與以前的 Web 開發(fā)模型相比,ASP.NET 具有開發(fā)效率高、使用簡單快捷、管理更簡便、全新的語言支持以及清晰的程序結(jié)構(gòu)等優(yōu)點。
大綱說明
二、課程教學基本要求
本課程是一門高級考證課程,除讓學生掌握ASP.NET開發(fā)之外,還必須讓他們掌握各個知識點,熟練使用開發(fā)環(huán)境,多做練習,順利通過考證。
二、推薦教材與參考書
《ASP.NET數(shù)據(jù)庫開發(fā)經(jīng)典案例》中國水利出版社 羅斌等編著
《ASP.NET職業(yè)技能培訓教程》 勞動和社會保障部全國計算機信息高新技術(shù)考試指定教材 2004年4月
《ASP.NET試題匯編》 勞動和社會保障部全國計算機信息高新技術(shù)考試指定教材 2004年4月
《ASP.NET程序設(shè)計》
陳惠貞 陳俊榮著 中國鐵道出版社
2004年5月
四、教學方法與教學形式建議
由于本課程是一門實踐性和技能性較強的課程,因此教師上課最好直接在機房進行,采取邊講邊練的形式。教學應該力求通俗易懂、多用一些圖片等手段對重點、難點問題進行講解和說明。同時通過學生實踐操作,使得學生更好的理解掌握。
第二部分 教學內(nèi)容與教學要求
第 1 章 ASP NET 基礎(chǔ)(4學時)
本章主要介紹 ASP.NET 編程的網(wǎng)絡(luò)基礎(chǔ)知識和 網(wǎng)絡(luò)程序設(shè)計的相關(guān)概念,Web 和 Web 應用程序開發(fā)的概念及相關(guān)的基礎(chǔ)知識。
本章主要講述什么是 ASP.NET、ASP.NET 的發(fā)展、如何安裝 ASP.NET 框架、如何配置 IIS、如何安裝 Visual Studio.NET 以及如何創(chuàng)建和運行 ASP.NET 應用程序。創(chuàng)建虛擬目錄、其他文本編輯器的使用、Visual Studio.NET 簡介、創(chuàng)建 ASP . NET Web 應用程序、創(chuàng)建新 ASP.NET(Web 窗體)、如何添加控件、保存和瀏覽頁
第 2 章
C# 語言(8學時)
C# 是微軟.NET 開發(fā)平臺下的編程語言,是.NET 開發(fā)平臺的核心。微軟的.NET 為開發(fā)程序開創(chuàng)了新的局面,使開發(fā)網(wǎng)絡(luò)程序變得簡單,該平臺也提供一種更為強大有效的 Web 服務,通過豐富的類庫可以使程序員快速開發(fā)所需要的程序。本章主要講解C#語言基礎(chǔ)及C#面向?qū)ο缶幊痰乃枷爰胺绞?/p>
第 3 章
HTML 控件(8學時)
本章主要講解HTML標記及HTML控件,掌握HTML控件的功能及格式,熟練掌握ASP.NET中常用的HTML控件。
第 4 章
Web 服務器控件(8學時)
本章主要講解Web 服務器控件,掌握Web 服務器控件的功能及格式,熟練掌握ASP.NET中常用的Web 服務器控件。
第 5 章
Web 高級控件(8學時)
本章主要講解Web 高級控件,熟練掌握幾個Web 高級控件,如:Calendar控件、DataGrid控件、Adrotator控件等,以及掌握Web驗證控件等。
第 6 章
數(shù)據(jù)庫編程(12學時)
本章從 Connection 對象入手,首先以 SQL Server 和 Access 為例介紹了連接數(shù)據(jù)庫的兩種不同方式,然后詳細探討了 ADO.Net 的兩種訪問數(shù)據(jù)源的方式:使用 DataReader 對象,以及把 DataSet 對象和 DataAdapter 對象結(jié)合起來。接下來,介紹了三種數(shù)據(jù)顯示控件 Repeater 控件、DataList 控件和 DataGrid 控件。
第 7 章
高級應用(8學時)
本章將介紹 ASP.NET 的高級應用,具體包括用戶控件和自定義控件、XML 基礎(chǔ)知識、XML 在 ASP.NET 中的應用、緩存技術(shù)、Web Service 及其相關(guān)技術(shù)。