當前位置:萬佳範文網 >

心得體會 >心得體會精選 >

初學asp心得體會(通用5篇)

初學asp心得體會(通用5篇)

初學asp心得體會 篇1

一、準備工作

初學asp心得體會(通用5篇)

首先,學習asp要有些基本的編程知識.最好先學過點vb java最好因為asp不是一門編程語言而是一個web編程框架.他是利用腳本(vbscript javascript)語言做為編程語言的.如果你不會他們那麼至少得會點c.c也不會的話建議你先學下c,雖然並不是一定要先學過編程語言,但是學他對這個的學習是有莫大的好處的.在Asp.net中,整張web頁是放在一張大表單裏面的。如:

網頁的具體內容

在這個表單內可能放置了很多html控件如按鈕、下拉菜單、文本框等。Asp.net提供了一些服務器端web控件。在服務器上執行的時候,通過一定的條件,web窗體將這些服務器web控件轉換為普通的html控件。比如一個按鈕:

經過轉換後就變成了:

在Asp.net中,一個web窗體被看成了一個對象。它的數據成員就是那些web控件和你自己定義的變量,它的函數成員就是那些用來響應客户端操作的函數,當然還有你自己定義的函數。我大致講一下用户請求一張web頁的時候發生了一些什麼事件:

首先,用户第一次請求頁面時,先執行web頁的page_init過程,在這裏通常對組件進行初始化。然後執行page_load過程,在這裏,我們可以做一些初始化的工作。比如:設定標籤控件的文本為:“初始”。然後,由於用户是第一次請求頁面,所以沒有什麼其他事件發生。程序控制轉為解釋執行html代碼頁中的服務器代碼。在html中,有一個這就是我們的標籤控件。因為我們在page_load過程中對標籤的文本賦值了,所以現在程序在將轉換為初始。而按鈕的轉換就類似於上面我已經説過內容。經過這些轉換以後,html頁內的代碼變成了標準的代碼。然後,這些代碼被用户瀏覽器得到了。經過解析後,用户就可以看到一個“初始”和一個按鈕。

現在,用户對着按鈕點擊了一下。於是,表單就提交了。(提交的細節,我下面再説)通過提交的表單,服務器得知這是用户點擊了按鈕控件。並且這是用户第二次請求該頁面了。於是,程序又執行page_init過程、page_load過程。這時,因為用户點擊了按鈕控件,則程序開始執行另一個函數,這個函數是用來專門處理用户點擊了按鈕控件這個事件的。在這裏,我們將標籤控件的文本設置為:“點擊”。然後程序控制又轉到html頁。跟上面第一次請求時一樣。於是用户在客户端通過瀏覽器就可以看到一個“點擊”和一個按鈕了。

.net是通過隱藏控件來傳遞客户端信息的,例如產生事件的控件的名字。然後,提交表單。這樣,服務器端就可以根據隱藏控件來確定產生事件的控件的名字,併產生服務器事件,進而對該事件進行處理。

對於一個熟練的程序員來説,他也不可能完全記住每個語言的各項細節.再簡單的語言也有很複雜的細節,所以幫助文件是必須的.在一次又一次的查閲中你會發現自己查閲的次數越來越少了.如果你基本上不查閲了,那麼你已經基本上掌握這麼語言了.(為什麼説基本上,那是因為一門語言不是隻有語法,還有其他的,比如編程思想,特性等)我列出的這些都是必須的,當然還可以有些別的比如xml ajax技術等

運行環境

在這裏推薦iis畢竟asp是人家微軟的技術.人家又那麼牛,別人很難做的比他好啊!aspstudio很容易出錯,不怎麼好,不推薦做大型項目.但是個人做點小東西的很方便很好,不過他好象不支持類的功能(也許是我沒找到支持它的版本,有請大蝦指出).net沒用過有請大家討論下!

數據庫

建議初學的話用access因為起功能簡單.也容易上手.但是最終你還是要會大型數據庫的,現在對網絡程序員的招聘一般要回oracle sqlserver mysql.

二、開始學習

學習asp首先得開始學習靜態頁面開始,如果你有這方面的知識那麼可以省略。

靜態頁面

靜態頁面就是純html語言加客户端javascript的頁面。所以你可一先學習下html語言,但是如果不是學過面向對象編程的話,建議你先不要看javascript。先就學點 html語言,不要太深就學習個基本的表格,字體樣式,基本的結構就可以了。然後再學會用網頁三劍客。特別是要學好用dreamvear.

頁面大小:一個頁面的大小一般是寬度778像素或者是1024像素,但是大多數是用的778因為現在還有很多顯示器很差設置的是778像素。這樣能更多的支持。當然你可以設置為百分比這樣就不會為這個而煩惱了!比如54的頁面就是設置的百分比(一般的論壇都是)。logo和banner:一般logo和banner也是有固定尺寸的logo一般88×31而banner一般是和網頁的寬度差不多可以是778和1024高度最好不要超過120

網頁標題:好多人最開始學習的時候沒怎麼注意過結果他編的網頁都是無標題文檔。記住在中間加個標題。

網頁關鍵字:網頁的關鍵字是搜索工具檢索網頁的重要依據,有效的關鍵字對於提高網站排名及人氣很有用處。

版權信息:一個網頁一定得有個版權信息,這是專業與非專業的區別。當然加上一些聯繫方式比如郵件地址等,方便別人的聯繫。如果你的網站有什麼問題,網上還是有很多熱心人通知你的。

文件名: 建議大家才開始學習的時候就養成良好的習慣。用英文命名,同時最好能表達你的文件的主要內容,可以是英文單詞,或者是拼音,當然英文是最好的。不是特殊要求請不要用特殊字符,比如#等

javascript:javascript開始的時候可以不用學習,網上的這些代碼很多很詳細,連怎麼樣運用都寫的很清楚。可以直接找來運用。

1.另外為了防止代碼亂碼,所以要有句如上面的.因為中文編碼都是gb2312不加這句很榮譽出錯出現亂碼

2。開始學習的時候你可能沒注意過代碼的排版。html你可以用dm看,但是當你開始編輯動態頁面的時候就要注意。一個好的排版能夠讓別人讀懂你的代碼(這個很關鍵,你進公司工作,不可能一個人開發整個系統)。關鍵是做好縮進html代碼如是,asp代碼也是。

3。開始學習的時候不要貪多爭取先弄懂一的對象比如adodb,然後在看別的。其實所有的東西基本都是一個模板。主要是理解,絕不要強求記憶。記憶是等你做多之後自然的事情。不過最基本的對象開始你得弄懂,比如request response要學會運用他們。

4。開始學習的時候要弄清楚一些基本的技術。包括分頁技術;數據庫的連接,數據的查詢,刪除;數據庫的基本操作,表的建立,刪除。

三、編程實踐

編程只看教程,只看書是不行的。需要你實際操作,才知道一些細節的問題.

開始編的話可以學習編寫一些小的模塊.比如新聞顯示,或折一個簡單的留言本.練習下.然後做個簡單的整站試下.

編程的時候要注意代碼儘量思路清晰.要有高的擴展性,便宜以後擴展.所以儘量做成函數和過程再在頁面裏面調用.

同時這裏也有些需要提醒大家注意的地方

1.前期設計工作

設計一個網站是其實主要的工作不是在後面的編程,而關鍵成功的因素是在前期的歸劃.前期要弄明白你的需求是什麼.要實現什麼功能.劃分好每個功能模塊.為每個功能模

塊,劃分好好實現的各個功能函數.最好有一個清晰的計劃書.如果着一切你都事先做的橫好那麼後面編程是很簡單的事情.一切水道渠成.

2.數據庫設計

數據庫設計也是非常重要的,一個好的數據庫設計就為一個漂亮的開始.

數據庫儘量簡單,不要建立太多的表.一個表要儘量容入多的數據.但是這個是在一個原則的條件下,數據庫設計的要清晰.最好一個對象建立一個表.而對於某個對象起屬性少的情況下,就不要建立一表.

比如我門常用的電子郵件,如過你不是做郵件服務器的話就沒的必要建立電子郵件的表,你只要在用户的表裏面建立個email字段就可以了.

另外要特別注意數據庫的速度,網絡一切速度第一.所以你最好要為每張表建立一個int類型的id字段我們查詢的時候就查詢id,由於是數字,比字符的查詢的速度快(在大量數據的情況下很明顯)當然這就以為着你必須檢查,或者設置id字段的值不能重複.當然還有的就是你得有個習慣就是所有的字段都是用英文表示(有點廢話,但是也許有寫人不知道),也上為了提高速度,同時便宜兼容別的不支持漢語的數據庫.

3.數據庫的查詢等

數據庫的操作很重要,他很影響整個程序的速度.注意:一般一個網站的速度限制住要是在網絡帶寬,和內存的大小.而數據庫是耗內存的大户,同時他的訪問速度也限制整個網頁的速度(對於小型網站這個是主要的限制因素).

所以數據庫的操作很重要.我們在做數據庫操作的時候要記得儘量提高查詢速度.首先,要編寫儘量簡單的查詢語句,不要一個查詢語句裏面做很多圈套,少用或儘量不用聯合查詢.

儘量在搜索的時候用id字段查詢,少查詢字符,提高檢索速度.

其次,對於數據庫的資源.當申請了連接用完就釋放.於最早的時間釋放資源.然後如果數據庫裏面的記錄特別多的話,那麼就最好做一些優化我們在查詢的時候只查詢前面1000記錄避免暫時無用的數據佔用資源.同時也可以用asp自代的分頁功能.adoob對象有這個功能.

再次,對於複雜的事物處理我們可以用視圖和存儲過程,事實證明運用試圖存儲過程能顯著提高速度.當然建立必要的索引也是可以的.要在這些方面做好取捨.不過前提是你所用的數據庫都支持.

最後,我們可以把經常用的業務查詢放入內存.來優化速度.這樣當每次尋要用的時候就可以直接去內存尋找,避免每次都查詢數據庫.

4.asp編程

首先,我們如果才開始編程的的話,不要求什麼新技術.儘量採用簡單的技術.其實一個程序如果設計的思想很好很漂亮,那麼我們就沒必要關心他是用什麼技術實現的哪怕是最初級的技術.一樣

是好程序,只要它能達到最開始的要求就是.而且對於我們才開始學習的人,如果一就研究這些複雜的東西是困難的,也沒的必要啊.等你基本是上很熟悉asp編程了.你可以去閲讀技術文檔.再去學習.

其次,我們要照顧一些安全的需要.

1.檢測下sql語句編寫安全的sql語句.

比如這樣的語句就不怎麼好:sql="select * from table1 where name="&rename傳過來的可能代有'號可以夠造一個查詢被注射.

可以這麼寫sql="select * from table1 where name='"&rename&"'"

2.時刻記得檢測傳遞過來的request對象,加一句replace(cint(request("")),"'","")

可以起到一定的防範作用.

3.對於權限的檢測有些人只用cookies驗證,這是不行的現在有工具可以自己構造這個.因為cookies是放在客户端的,很容易被黑課利用.對於次我們可以採用cookies 加session驗證的辦法.

4.另外記得數據庫的安全,要做下防下載的處理.可以用幾個變態的數據庫名,同時在數據庫裏面建立個防止下載的表.防止被暴庫.同時帳號密碼最好加下密採用md 5加密一般不好被破解.

5.對於用户的登陸頁面的驗證.我們在查詢的時候最好最好加下面的語句

code:

'前面為查詢

if not rs.eof then

if rs("username")=md5(username) and rs("userpass")=md5(userpass) thensession("user")=true

response.redirect"轉入成功頁面"

else

response.redirect"轉入錯誤頁面"

end if

end if

同時我們在登陸的地方最好要有的驗證碼驗證,或者記錄錯誤登陸次數.限制同一ip多次錯誤的登陸.防止被暴力破解.

6.後台編輯器我門儘量不要採用html編碼,可以採用ubb代碼,防止被嵌入木馬等.存儲如數據庫的時候要採用字符過濾.過濾掉一些危險的單詞,如 delete in to content 等最後要説的是編譯運行.

你寫的代碼不可能是完全正確的.需要通過服務器的檢測才行.但是一般一經檢測都有那麼點問題.這時候就需要調試.我推薦大家採用aspstudio因為他可以設置斷點.方便找錯及修改.不過他的技術可能不是很成熟有時候出錯.所以你有時候還是得用iis.有是在本地運行不了的程序,在服務器上卻可以.所一你最好有個個人的動態空間.方便測試.另外説下的是,找錯誤.一般是出的小錯誤.比如編碼格式,或者一個if沒結束.這個以為就是邏輯錯誤

在眾多的if語句中出錯誤.大家向這個方面去找.一般不是什麼大問題.

四、總結

asp是容易上手,而且速度也很好,不用編譯為可執行程序,所以他才這麼流行.但是現在看來我感覺他的前途不大了.因為它有太多的毛病.首先這個東西似乎特別不怎麼安全.我看見的網站入侵大多數是asp的.其次它也不適宜特別大的項目.作為小中型運用還可以.做為大型.他一是很不好做好邏輯與業務分離.程序用到東西太多,代碼再怎麼注意清晰的編寫都感覺很亂.程序的偶合程度太強.不便於以後改進更新.十分不便於多人開發.然後相對於jsp他不能跨平台.沒有其有着從小型到大型的web運用的成熟的解決方案強大語言支持.同時不能向php一樣開源.而微軟現在又關注的是.net平台.

初學asp心得體會 篇2

ASP內置對象response

Response的屬性

.buffer (表明頁輸出是否被緩衝)

使用格式

Response.buffer=true/false

注:很多方法使用時對BUFFER屬性有要求,對其設置最好寫在ASP文件第一行。

.ContentType (指定HTTP輸出內容類型)

使用格式

Response.ContentType="內容類型"

.BinaryWrite (不經過任何轉換,將指定的信息輸出,它主要輸出非字符信息)

使用格式

Response.BinaryWrite 二進制數據

Clear/End/Flush與Buffer屬性的依賴關係

{

.Clear (把緩衝區內容清空)

.End (停止執行後面的代碼,緩衝區內容仍然有效)

.Flush (緩衝區中編譯完成的數據先發送到客户端)

}

.Redirect (跳轉網頁,必須將Buffer的屬性設置為TRUE)

使用格式

Response.Redirect 網址

Request對象Cookies集合用來取得用户的相關信息

Response對象Cookies集合負責將數據設置到瀏覽器

寫入Cookies到用户瀏覽器

response.Cookies("Cookies名")="Cookies值"

讀取Cookies

request.Cookies("Cookies名")

另類的Cookies

response.Cookies("Cookies名")("元素")

另類的Cookies的讀取

request.Cookies("Cookies名")("元素")

.expires (設置Cookies的過期時間)

使用格式

respones.Cookies("Cookies名").expires="過期的時間 (例:20xx-7-17 7:17)"分享:

初學asp心得體會 篇3

Asp.net在現在商業中應用相當的廣泛,這學期我們開了這門課,那到底什麼是asp呢?asp嗎,它是一種包含了使用vb script或jscript腳本程序代碼的網頁。當瀏覽器瀏覽asp網頁時, web服務器就會根據請求生成相應的html代碼然後再返回給瀏覽器,這樣瀏覽器端看到的 就是動態生成的網頁。asp是微軟公司開發的代替cgi腳本程序的一種應用,它可以與數據庫和其它程序進行交互。是一種簡單、方便的編程工具。在瞭解了vbscript的基本語法後,只需要清楚各個組件的用途、屬性、方法,就可以輕鬆編寫出自己的asp系統。asp的網頁文件的格式是.asp。 現在經過三個多月的簡單學習和上課聽講,初步掌握了Asp.net動態網頁製作的一些簡單的知識和基本常識,也能從老師講的基本知識中簡單的應用一下上課所學到的知識?感覺Asp.net網站建設和維護不是很方便,其中不僅要應用各種方面的知識還要對所學的知識學會變通使用,雖然會有一些成功的地方。但是,更多的是困惑,有太多的東西都不懂,以前學c++、數據庫等一些相關知識的時候沒好好學,現在想真正做好這個網站就顯得不那麼容易了。曾經看到網上有這麼一句話,一個優秀的網絡程序員不但要了解自己領域的一些專業技術,而且很多時候還要充當半個網絡工程師,半個美術設計師和半個數據庫管理員。照這麼説來,我單單學習Asp.net是遠遠不夠的,還要學習計算機網絡、美術設計、數據庫,我很喜歡有關計算機方面的東西。認為我們當代的生活越來越離不開計算機,並且我也很痴迷計算機所帶來的強大功能。首先我們學習了c#,雖然c#現在不是編程員的熱門語言,但在網頁製作中也相當的使用。大三上學期我們有一門課是c# and development。雖然我們當時用的c#程序的開發平台是.net,但是我對.net卻瞭解粗淺,對c#這門編程語言和.net的關係不太清楚。隨着後來學了另一門.net 的課程soa, cloud computing and sharepoint programming with microsoft .net,我才對.net這一門技術有了深入的理解。在這裏,我想説一説我個人對.net的理解,希望能幫助大家更好的學習。

現在在asp的世界中,asp的應用相當的廣泛,在很多方面都有有用到。一方面,用户擁有一套設備,例如 pc、移動電話、筆記本。這些設備可能放在辦公室或者家裏。當用户需要在辦公室的某台設備或移動電話上訪問家中存儲的的信息(電子郵件或其他任何信息)時,問題就出現了,因為所有這些設備都將數據存儲在不同的位置。用户認為需要一種個人信息空間,通過它,用户可以在家中或途中訪問存儲在辦公室的信息,或者以相同方式從任何位置訪問存儲在家中的信息。另一方面,開發人員沒有足夠的工具來開發用户所需的解決方案。 結果是,站點雖然頗具吸引力卻缺乏有效性和實用性。此外,需要為不同的設備開發不同的代碼,這也使開發人員頗感為難。如果開發人員擁有某些工具,使他能夠只編寫一次代碼,並可在多種設備中部署該代碼,將可以提高開發人員的工作效率。這是開發人員的需求。

在asp中我們還學習了fso、cgi、php等,那什麼是fso呢?而fso是微軟asp的一個對文件操作的控件,該控件可以對服務器進行讀取、新建、修改、刪除目錄以及文件的操作。是asp編程中非常有用的一個控件。但是因

為權限控制的問題,很多虛擬主機服務器的fso反而成為這台服務器的一個公開的後門,因為客户可以在自己的asp網頁裏面直接就對該控件編程,從而控制該服務器甚至刪除服務器上的文件。因此不少業界的虛擬主機提供商都乾脆關掉了這個控件,讓客户少了很多靈活性。 萬維時空的w2k虛擬主機服務器具有高安全性,可以讓客户在自己的網站空間中任意使用卻有沒有辦法危害系統或者妨礙其他客户網站的正常運行。cgi是一個用於定web服務器與外部程序之間通信方式的標準,使得外部程序能生成html、圖像或者其他內容,而服務器處理的方式與那些非外部程序生成的html、圖像或其他內容的處理方式是相同的。因此,cgi程序冊僅使你能生成表態內容而能生動態內容。使用cgi的原因在於它是一個定義良好並被廣泛支持的標準,沒有cgi就不可能實現動態的web頁面,除非使用一些服務器中提供的特殊方法(如今,也有除cgi之外的其他技術逐漸在成為標準)。php是一種服務器端html-嵌入式腳本描述語言。 其最強大和最重要的特徵是其數據庫集成層,使用它完成一個含有數據庫功能的網頁是不可置信的簡單。在html文件中, php腳本程序(語法類似於perl或者c語言)可以使用特別的php標籤進行引用, 這樣網頁製作者也不必完全依賴html生成網頁了。由於php是在服務器端執行的, 客户端是看不到php代碼的。 php可以完成任何cgi腳本可以完成的任務,但它的功能的發揮取決於它和各種數據庫的兼容性。 php除了可以使用http進行通信,也可以使用imap, snmp, nntp, pop3協議。

在目前的網站統計系統決大部分都是cgi的,但編寫起來特別複雜,而asp學起來簡單,更有和數據庫結合的優點,所以結合自己曾經做過的網站統計系統,和大家探討一下asp編寫網站統計系統。大家都看過網易的網站統計系統,它可以統計總訪問量,每日平均訪問量,當日訪問量,最高訪問量,最高訪問日期,日流量分析,月流量分析,周流量分析,瀏覽器分析,等等。其實要做一個asp的訪問統計系統關鍵是系統表結構的設計。以及如何來採集用户的cgi變量,如何來顯示用户的信息。也就是説系統的關鍵是兩個asp程序,統計程序和顯示程序。採集用户名我們可以用request對象的相應方法取得,然後檢查用户表判斷用户是否合法,然後取信息,用我們上面講到的取得相應信息的方法取得信息,然後進行加工保存在數據表裏,但最重要的是如何對數據進行更新,如當日每小時訪問統計數,當天每小時統計數等,我們如何對每天的數據進行更新是這個程式的要點,我們可以採取幾種方式,如對每天的每個小時的記錄的更新我們採取在每天午夜12點更新,對每月的每一天的數據我們在月份切換的那一天進行更新。隨着internet的發展,web技術日新月異。繼通用網關接口(cgi)之後,“asp”(active server pages)作為一種典型的服務器端網頁設計技術,被廣泛地應用在網上銀行、電子商務、搜索引擎等各種互聯網應用中。同時access數據庫作為微軟推出的以標準jet為引擎的桌面型數據庫系統,由於具有操作簡單、界面友好等特點,具有較大的用户羣體。因此asp+access成為許多中小型網上應用系統的首選方案。但asp+access解決方案在為我們帶來便捷的同時,也帶來了不容忽視的安全問題。由於access數據庫的加密機制非常簡單,所以即使數據庫設置了密碼,解密也很容易。該數據庫系統通過將用户輸入的密碼與某一固定密鑰進行異或來形成一個加密串,並將其存儲在*.mdb文件中從地址“&h42”開始的區域內。由於異或操作的特點是“經過兩次異或就恢復原值”,因此,用這一密鑰與*.mdb文件中的加密串進行第二次異或操作,就可以輕鬆地得到access數據庫的密碼。基於這種原理,可以很容易地編制出

解密程序。由此可見,無論是否設置了數據庫密碼,只要數據庫被下載,其信息就沒有任何安全性可言了。

前面所學到的數據訪問都是web應用程序直接訪問數據庫。這種在web窗體中直接訪問和操作數據庫中數據的方式是一種低效的資源使用方式,並且有可能產生安全風險。通過存儲過程訪問數據庫,可以有效地提高數據訪問效率和數據的安全性。可以在執行復雜任務時減少窗體的編碼量,降低對網絡寬帶的需求,通過只允許可信賴的本地存儲過程直接訪問數據庫,可以保護數據庫的安全。同時我們用到了一個容器控件repeater,當運行頁面時,repeater將綁定數據源中的數據,並按照模板的要求將數據在界面上呈現出來。正是由於repeater控件沒有默認的外觀,所以進行界面設計的時候會感到不太直觀。但repeater控件非常靈活,可以通過對模板的靈活使用,創建多種不同形式的列表,包括以特定分隔符的列表,或者xml格式的列表,同時它還能夠非常精確地對界面元素進行定位。除此之外我們還添加了網絡在線投票功能,網絡在線投票是網絡用户的興趣、價值取向以及熱點關注等信息的關注程度的一種體現,實現了在線投票功能,為了更為直觀的顯示和查看投票結果,將投票結果圖形化是一種較好的手段。所以我們引用了一個類graphics, graphics類是gdi+圖形編程中的核心類。他封裝了gdi+界面的繪圖方法以及圖形顯示設備,極大地的簡化了開發人員的圖形編程工程工作。通過graphics類的屬性可以獲取graphics對象的分辨率,並能夠為graphics對象進行裁剪區域的選擇和判斷,而頁面中圖形的繪製則都是通過graphics類的實例方法實現,同時引用了web服務器控件image。image控件同img標籤一樣,其主要作用是在web頁面中顯現圖片信息,其主要屬性為imageurl,用於設置需要顯示的圖片的url地址。儘管Asp.net提供的image控件可以快速地載入圖形,但卻並不支持click事件。而且gdi+除了可以繪製圖形和文字外,還可以繪製或編輯已有圖片,為圖片添加水印或裁剪圖片等操作。在實際的web應用開發中,開發人員為了防止非法用户惡意批量註冊或者惡意程序暴力破解密碼等操作,我們相應的做了圖形驗證碼功能,在用户身份驗證時都會採用驗證碼技術。驗證碼技術可以有效防止某些特定註冊用户採用惡意程序和暴力破解方式對網站進行不斷的登錄嘗試,為此我們引用了random類,隨即數在計算機應用程序設計,尤其是在實踐環境模擬和測試等領域得到了非常廣泛的應用。random類是一個偽隨即數生成器,能夠產生滿足一定隨即性系統要求的數字序列。既然是偽隨機數生成器,產生的數字就不是絕對的隨即數,而是通過一定的算法產生的偽隨機數。

在本次課程學習過程中,我學到了好多東西。在此特別感謝老師教誨。老師不僅上課生動、幽默,平時上機時又悉心的指導。同時感謝學校給我們提供了非常優越的設計環境,對於我順利完成這次asp課程的學習,本次學習起到了關鍵性的作用。也通過上次的實驗設計學會了簡單的網站設計,通過開發上次的系統,我較全面的掌握了aspt及sql的基本知識和編程技巧,並在開發過程中我的Asp.net開發能力得到了進一步的提高。如: sql語言的使用;以前學過的軟件工程知識、數據庫原理及操作也得到了充分的應用。

在開發過程中我學到了一些經驗:系統分析的好壞將決定着的系統開發成功與否,一份好分析設計將是成功開發主要因素。我們在着手開發之前不要急於編程,先應有較長的時間去把分析做好,做好數據庫設計工作,寫出相關的開發文檔等。然後再開始編寫程序代碼,這樣做到每寫一步代碼心底有數,有條不絮。在這短短的幾個月中,我知道在程序設計的時候,不要太在意程序是否最簡潔靈活,對於一般開發者而言,程序規範化和可讀性可能比追求程序的靈活性更加重要。在互聯網資源越來越豐富的情況下,我們可以參考一些規範的程序源代碼來學習。同時我也知道,想要學好這門課程,所要具備很多條件,首先打代碼要規範,要做註釋,這樣回頭來看程序時可以很快的看懂,可以練習自己的邏輯表達能力,對以後遇到難以實現的功能也可以很好的表達出來向別人請教,而且出去從事編程工作的話,代碼的規範是相當重要的。還有一點要學會總結,把自己做的程序用到的知識點列出來就可以很好的總結自己的知識點。

初學asp心得體會 篇4

經過兩個多月的學習和上課聽講,初步掌握了Asp.net動態網頁製作的一些簡單的知識和基本常識,也能從老師講的基本知識中應用一下上課所學到的知識,感覺Asp.net網站建設和維護不是很簡單,其中不僅要應用各種方面的知識還要對所學的知識學會變通使用,雖然會有一些成功的地方,以前學c++、數據庫等一些相關知識的時候沒好好學,現在想真正做好這個網站就顯得不那麼容易了。曾經看到網上有這麼一句話,一個優秀的網絡程序員不但要了解自己領域的一些專業技術,而且很多時候還要充當半個網絡工程師,半個美術設計師和半個數據庫管理員。照這麼説來,我單單學習Asp.net是遠遠不夠的,還要學習計算機網絡、美術設計、數據庫,我很喜歡有關計算機方面的東西,認為我們當代的生活越來越離不開計算機,並且我也很痴迷計算機所帶來的強大功能。

它是microsoft .net戰略的核心產品,Asp.net憑藉它豐富的控件,以及具有革命性的code-behind技術,以及良好的封裝性,無疑成為業界開發active server page的一門巨將, asp 是一項微軟公司的技術,是一種使嵌入網頁中的腳本可由因特網服務器執行的服務器

端腳本技術。 指 active server pages(動態服務器頁面) ,運行於 iis 之中的程序 。Asp.net 是 asp(微軟動態服務器網頁技術)的最新版本。執行效率大幅提高:Asp.net構架是可以用microsoft(r)公司最新的產品 visual 開發環境進行開發,wysiwyg(what yousee is what you get所見即為所得)的編輯。簡單性和易學性

高效可管理性

Asp.net使用一種字符基礎的,分級的配置系統,使你服務器環境和應用程序的設置更加簡單。因為配置信息都保存在簡單文本中,新的設置有可能都不需要啟動本地的管理員工具就可以實現。這種被稱為"zerolocal administration"的哲學觀念使Asp.net的基於應用的開發更加具體,和快捷。一個Asp.net的應用程序在一台服務器系統的安裝只需要簡單的拷貝一些必須得文件,不需要系統的重新啟動,一切就是這麼簡單。多處理器環境的可靠性 Asp.net已經被刻意設計成為一種可以用於多處理器的開發工具,它在多處理器的環境下用特殊的無縫鏈接技術,將很大的提高運行速度。即使你現在的Asp.net應用軟件是為一個處理器開發的,將來多處理器運行時不需要任何改變都能提高他們的效能,但現在的asp確做不到這一點。自定義性和可擴展性 Asp.net設計時考慮了讓網站開發人員可以在自己的代碼中自己定義"plug-in"的模塊。這與原來的包含關係不同,Asp.net可以加入自己定義的如何組件。網站程序的開發從來沒有這麼簡單過。

安全性基於windows認證技術和每應用程序配置,你可以確性你的原程序時絕對安全的。 Asp.net 的語法在很大程度上與 asp 兼容,同時它還提供一種新的編程模型和結構,可生成伸縮性和穩定性更好的應用程序,並提供更好的安全保護。可以通過在現有 asp 應用程序中逐漸添加 Asp.net 功能,隨時增強 asp 應用程序的功能。 Asp.net 是一個已編譯的、基於 .net 的環境,把基於通用語言的程序在服務器上運行。將程序在服務器端首次運行時進行編譯,比asp即時解釋程序速度上要快很多.而且是可以用任何與 .net 兼容的語言序。另外,任何 Asp.net 應用程序都可以使用整個 .net framework。開發人員可以方便地獲得這些技術的優點,其中包括託管的公共語言運行庫環境、類型安全、繼承等等。 Asp.net 可以無縫地與 wysiwyg html 編輯器和其他編程工具(包括 microsoft visual studio .net)一起工作。這不僅使得 web 開發更加方便,而且還能提供這些工具必須提供的所有優點,包括開發人員可以用來將服務器控件拖放到 web 頁的gui 和完全集成的調試支持。

當創建 Asp.net 應用程序時,開發人員可以使用 web 窗體或 web,或以他們認為合適的任何方式進行組合。每個功能都能得到同一結構的支持,使您能夠使用身份驗證方案,緩存經常使用的數據,或者對應用程序的配置進行自定義. 如果你從來沒有開發過網站程序,那麼這不適合你,你應該至少掌握一些html和簡單的web開發術語(不過我相信如果有興趣的話是可以很快的掌握的)。你不需要先前的asp開發經驗(當然有經驗更好),但是你必須瞭解交互式web程序開發的概念,包含窗體,腳本,和數據接口的概念,如果你具備了這些條件的話,那麼你就可以在Asp.net的世界開始展翅高飛了。

首先我們學習了怎麼設計主頁,一個好的主頁可以給瀏覽者一個耳目一新的感覺,所以網站主頁的佈局就顯得格外重要了,好的佈局加上親切的言語,以及強大的功能,都會是瀏覽者感到無比的親切。這次我跟劉昕做的是樂糕網,一個粉紅色的佈局顯出温馨的格調,其次我們添加了用户註冊界面,同時應用了模板頁,模板頁嵌套在註冊頁面上,同時與主頁的註冊按鈕相連接,在主頁引用了css樣式,使得格局更加清晰。之後我們做了在線投票頁面,同樣引用了模板頁,同時學會了使用cookie,session的使用。做好這些功能之後,我們開始用到了數據庫,要實現用户的存儲和調用,以及商品信息的錄入,同時對商品id進行數據綁定,之後我們實現了購物車功能,使用 datalist控件實現了對後台代碼文件中綁定其數據源,asp,net3.5提供的datalist控件使用模板顯示內容,他允許每一行顯示多條記錄。可以使用html表對應模板項的呈現方式進行佈局,從而控制各個單元格的順序、方向和列數。在這之後我們又做了留言板,通過調用存儲過程,做到了留言板功能的實現,。前面所學到的數據訪問都是web應用程序直接訪問數據庫。這種在web窗體中直接訪問和操作數據庫中數據的方式是一種低效的資源使用方式,並且有可能產生安全風險。通過存儲過程訪問數據庫,可以有效地提高數據訪問效率和數據的安全性。

可以在執行復雜任務時減少窗體的編碼量,降低對網絡寬帶的需求;通過只允許可信賴的本地存儲過程直接訪問數據庫,可以保護數據庫的安全。同時我們用到了一個容器控件repeater,當運行頁面時,repeater將綁定數據源中的數據,並按照模板的要求將數據在界面上呈現出來。正是由於repeater控件沒有默認的外觀,所以進行界面設計的時候會感到不太直觀。但repeater控件非常靈活,可以通過對模板的靈活使用,創建多種不同形式的列表,包括以特定分隔符的列表,或者xml格式的列表,同時它還能夠非常精確地對界面元素進行定位。除此之外我們還添加了網絡在線投票功能,網絡在線投票是網絡用户的興趣、價值取向以及熱點關注等信息的關注程度的一種體現,實現了在線投票功能,為了更為直觀的顯示和查看投票結果,將投票結果圖形化是一種較好的手段。所以我們引用了一個類graphics, graphics類是gdi+圖形編程中的核心類。他封裝了gdi+界面的繪圖方法以及圖形顯示設備,極大地的簡化了開發人員的圖形編程工程工作。通過graphics類的屬性可以獲取graphics對象的分辨率,並能夠為graphics對象進行裁剪區域的選擇和判斷,而頁面中圖形的繪製則都是通過graphics類的實例方法實現,同時引用了web服務器控件image。image控件同img標籤一樣,其主要作用是在web頁面中顯現圖片信息,其主要屬性為imageurl,用於設置需要顯示的圖片的url地址。儘管Asp.net提供的image控件可以快速地載入圖形,但卻並不支持click事件。而且gdi+除了可以繪製圖形和文字外,還可以繪製或編輯已有圖片,為圖片添加水印或裁剪圖片等操作。

在實際的web應用開發中,開發人員為了防止非法用户惡意批量註冊或者惡意程序暴力破解密碼等操作,我們相應的做了圖形驗證碼功能,在用户身份驗證時都會採用驗證碼技術。驗證碼技術可以有效防止某些特定註冊用户採用惡意程序和暴力破解方式對網站進行不斷的登錄嘗試,為此我們引用了random類,隨即數在計算機應用程序設計,尤其是在實踐環境模擬和測試等領域得到了非常廣泛的應用。random類是一個偽隨即數生成器,能夠產生滿足一定隨即性系統要求的數字序列。既然是偽隨機數生成器,產生的數字就不是絕對的隨即數,而是通過一定的算法產生的偽隨機數。初始化一個隨機數發生器有兩種方法:第一種是不指定隨即種子,系統自動選取當前時間作為隨機種子,代碼如下:random rand=new random;第二種方法是指定一個int型參數作為隨即種子,認識到了網站的真正的結構,最終才對bs結構的網站程序有了進一步的認識。同時,對sql大型數據庫的認識才有了質的改變。最後我們做了網絡在線人數統計,完成了對樂購網網站的製作。

在這短短的幾個月中,我知道在程序設計的時候,不要太在意程序是否最簡潔靈活,對於一般開發者而言,程序規範化和可讀性可能比追求程序的靈活性更加重要。在互聯網資源越來越豐富的情況下,我們可以參考一些規範的程序源代碼來學習。同時我也知道,想要學好這門課程,所要具備很多條件,首先打代碼要規範,要做註釋,這樣回頭來看程序時可以很快的看懂,一方面可以練習自己的邏輯表達能力,對以後遇到難以實現的功能也可以很好的表達出來向別人請教,而且出去從事編程工作的話,代碼的規範是相當重要的。還有一點要學會總結,把自己做的程序用到的知識點列出來就可以很好的總結自己的知識點。當形成知識體系,對知識的理解就會更上一層樓。

初學asp心得體會 篇5

asp 是一項微軟公司的技術,是一種使嵌入網頁中的腳本可由因特網服務器執行的服務器端腳本技術。 指 active server pages(動態服務器頁面) ,運行於 iis 之中的程序 。 Asp.net的前身asp技術,是在iis 2.0上首次推出,當時與 ado 1.0 一起推出,在iis 3.0發揚光大,成為服務器端應用程序的熱門開發工具,微軟還特別為它量身打造了visual

interdev開發工具,在1994年到20xx年之間,asp技術已經成為微軟推展windows nt 4.0平台的關鍵技術之一,數以萬計的asp網站也是這個時候開始如雨後春筍般的出現在網絡上。它的簡單以及高度可定製化的能力,也是它能迅速崛起的原因之一。

因為Asp.net是基於通用語言的編譯運行的程序,所以它的強大性和適應性,可以使它運行在web應用軟件開發者的幾乎全部的平台上(筆者到現在為止只知道它只能用在windows 20xx/20xx server/vista/7/xp/win7上)。通用語言的基本庫,消息機制,數據接口的處理都能無縫的整合到Asp.net的web應用中。Asp.net同時也是language-independent(語言獨立化)的,所以,你可以選擇一種最適合你的語言來編寫你的程序,或者把你的程序用很多種語言來寫,現在已經支持的有c#(c++和java的結合體),vb,jscript , c++、f++。將來,這樣的多種程序語言協同工作的能力保護您現在的基於com+開發的程序,能夠完整的移植向Asp.net。

Asp.net一般分為兩種開發語言,vb.net和c#,c#相對比較常用,因為是.net獨有的語言,vb.net則為以前vb程序設計,適合於以前vb程序員,如果新接觸.net,沒有其他開發語言經驗,建議直接學習c#即可。

Asp.net使運行一些很平常的任務如表單的提交客户端的身份驗證、分佈系統和網站配置變得非常簡單。例如Asp.net頁面構架允許你建立你自己的用户分界面,使其不同於常見的vb-like界面。

Asp.net使用一種字符基礎的,分級的配置系統,虛擬服務器環境和應用程序的設置更加簡單。因為配置信息都保存在簡單文本中,新的設置有可能都不需要啟動本地的管理員工具就可以實現。這種被稱為"zero local administration"的哲學觀念使Asp.net的基於應用的開發更加具體和快捷。一個Asp.net的應用程序在一台服務器系統的安裝只需要簡單的拷貝一些必須的文件,不需要系統的重新啟動,一切就是這麼簡單。多處理器環境的可靠性 Asp.net已經被刻意設計成為一種可以用於多處理器的開發工具,它在多處理器的環境下用特殊的無縫連接技術,將很大的提高運行速度。即使你現在的Asp.net應用軟件是為一個處理器開發的,將來多處理器運行時不需要任何改變都能提高他們的效能,但現在的asp卻做不到這一點。自定義性和可擴展性 Asp.net設計時考慮了讓網站開發人員可以在自己的代碼中自己定義"plug-in"的模塊。這與原來的包含關係不同,Asp.net可以加入自己定義的任何組件。網站程序的開發從來沒有這麼簡單過。安全性基於windows認證技術和每應用程序配置,你可以確保你的原

程序是絕對安全的。 Asp.net 的語法在很大程度上與 asp 兼容,同時它還提供一種新的編程模型和結構,可生成伸縮性和穩定性更好的應用程序,並提供更好的安全保護。可以通過在現有 asp 應用程序中逐漸添加 Asp.net 功能,隨時增強 asp 應用程序的功能。 Asp.net 是一個已編譯的、基於 .net 的環境,把基於通用語言的程序在服務器上運行。將程序在服務器端首次運行時進行編譯,比asp即時解釋程序速度上要快很多.而且是可以用任何與 .net 兼容的語言(包括 visual basic .net、c# 和 jscript .net.)創作應用程序。另外,任何 Asp.net 應用程序都可以使用整個 .net framework。開發人員可以方便地獲得這些技術的優點,其中包括託管的公共語言運行庫環境、類型安全、繼承等等。 Asp.net 可以無縫地與 wysiwyg html 編輯器和其他編程工具(包括 microsoft visual studio .net)一起工作。這不僅使得 web 開發更加方便,而且還能提供這些工具必須提供的所有優點,包括開發人員可以用來將服務器控件拖放到 web 頁的 gui 和完全集成的調試支持。 當創建 Asp.net 應用程序時,開發人員可以使用 web 窗體或 xml web services,或以他們認為合適的任何方式進行組合。每個功能都能得到同一結構的支持,使您能夠使用身份驗證方案,緩存經常使用的數據,或者對應用程序的配置進行自定義. 如果你從來沒有開發過網站程序,那麼這不適合你,你應該至少掌握一些html語言和簡單的web開發術語(不過我相信如果有興趣的話是可以很快的掌握的)。你不需要先前的asp開發經驗(當然有經驗更好),但是你必須瞭解交互式web程序開發的概念,包含窗體,腳本,和數據接口的概念,如果你具備了這些條件的話,那麼你就可以在Asp.net的世界開始展翅高飛了。iis指 internet information services(因特網信息服務)

iis同時也是 windows nt 4.0 的可選組件此可選組件可通過因特網下載

Asp.net不僅僅是 active server page (asp) 的下一個版本,而且是一種建立在通用語言上的程序構架,能被用於一台web服務器來建立強大的web應用程序。Asp.net提供許多比現在的web開發模式強大的優勢。

Asp.net 運行的架構分為幾個階段: 在 iis 與 web 服務器中的消息流動階段。 在 Asp.net 網頁中的消息分派。 在 Asp.net 網頁中的消息處理。

連接層級的對象是 session,以瀏覽器的運行個體為識別單位,數據依瀏覽器的運行個體來儲存,在瀏覽器的運行個體第一次連到應用程序時,Asp.net會設置一個 session id,並且使用它來識別session,每一個 session 都是 icollection與ienumerate的實現,用 key 來識別數據值,並且具有時間的限制,若超出時限時服務器會自動清理掉,默認的 session 時限為 20 分鐘。session id 的算法是由 rngcryptoserviceprovider (密碼編譯亂數產生器提供者)產生,並編碼成一個 session id 字符串(例

如 anf4vuup3xiq0arjlqla2l55 這樣的字符串)儲存在服務器中,用以識別不同的 session 個體。

為因應不同的用户端,Asp.net 設計了不同的 session id 存放機制,像是舊式的瀏覽器或是行動用户端這種不支持本地儲存cookie的設備時,Asp.net 可以直接在 url 中加上 session id 的識別,像是

(anf4vuup3xiq0arjlqla2l55)/profile.aspx 這樣的 url,可以由開發人員自行設置,或是使用 autodetect 設置來讓 Asp.net 自行判斷要使用的 session id 存放方式。

session id 的產生方法可以由程序開發人員自定義,藉由改寫 sessionidmanager 的 createsessionid 方法來自定義。

using system;

using system.configuration;

using system.web.configuration;

using system.web;

using system.web.sessionstate;

namespace samples.aspnet.session{

public class guidsessionidmanager : sessionidmanager {

public override string createsessionid(httpcontext context) {return guid.newguid.tostring;

}

public override bool validate(string id) {

try {

guid testguid = new guid(id);

if (id == testguid.tostring) return true;

}

catch { }

return false;

}

}

}

Asp.net 是開發 web 應用程序的基礎架構 (framework),除了它內部的運作方法外,對外也顯露了許多的開發支持,讓開發人員可以利用它來發展出許多強大的 web 應用程序解決方案。

Asp.net 最基礎的底層為網頁,網頁由 system.web.ui.page 類來提供基礎支持,包含了頁面的事件以及對象繪製的引發點(page 類本身是一個 http handler 的實現品)。Asp.net 網頁在微軟的官方名稱中,稱為 web form,除了是要和windows forms作分別以外,同時也明白的刻劃出了它的主要功能:“讓開發人員能夠像開發 windows forms 一樣的方法來發展

web 網頁”。因此 Asp.net page 所要提供的功能就需要類似 windows forms 的窗體,每個 web form 都要有一個區塊,所有的 Asp.net 服務器控件都要放在這個區域中,這樣才可以讓 viewstate 等服務器控制能夠順暢的運作。

使用代碼後置模式的設置時,可以讓 Asp.net 運行引擎在加載網頁時,由代碼後置參數取得對應的類信息,藉以使用 reflection 的方式來運行後置的代碼。

Asp.net 可以支持html和xhtml兩種網頁內容,但在visual 中,默認是使用 html,但在visual studio 20xx以後的版本,則一律都改用xhtml格式。

Asp.net 的內置控件分為兩種:html 控件:直接在 html 標記中加上 runat="server",即可對應到Asp.net指定的 html 服務器控件類,像是: htmlanchor:表示 html 的 web 控件:由 Asp.net 提供,比 html 控件提供更多的功能,但操作與設置會比 html 控件要複雜許多,像是: linkbutton:一種外型為鏈接 htmlbutton:表示 html 的 。 htmlimage:表示 html 的 。 htmlgenericcontrol:表示沒有對應到服務器控件的對象,都會被對應到這個類。 web 控件 (web control):由 Asp.net 提供,比 html 控件提供更多的功能,但操作與設置會比 html 控件要複雜許多,像是: linkbutton:一種外型為鏈接 (除了內置的控件之外,Asp.net 也提供了可以自定義的控件架構,並且支持兩種控件開發方法:

用户控件,以.ascx 為擴展名,可以讓開發人員用最輕鬆的方式來開發控件,優點是開發速度很快,但缺點是無法轉散佈,且無法加入參考。 自定義控件,可轉散佈型的控件,是經過編譯後的代碼,可單獨轉散佈,並且可在其他的項目加入參考引用,自定義控件有三種開發模式: 基礎控件:由 system.web.ui.control 類繼承而來,或是由現有的 web 控件繼承而來,像是由 button 控件繼承。 複合控件:由 system.web.ui.webcontrols.compositecontrol 繼承而來,可以用複合的方式來開發控件。 樣板控件:可以在控件中使用樣板,並套用數據到樣板中,支持數據綁定的表達式。

以往在 asp 中常被使用的五大基本對象,在 Asp.net 中仍然持續被支持,但它們都換了一個身份來提供:

application:包裝了 httpapplication 對象,在程序中使用 application 指令取得的對象,都是來自於 httpcontext.current.application 屬性回傳而得。 request:包裝了 httprequest 對象,在程序中使用 request 指令取得的對象,都是來自於 httpcontext.current.request 屬性回傳而得。 response:包裝了 httpresponse 對象,在程序中使用 response 指令取得的對象,都是來自於 httpcontext.current.response 屬性回傳而得。 session:包裝了

httpsessionstate 對象,在程序中使用 session 指令取得的對象,都是來自於 httpcontext.current.session 屬性回傳而得。

server:包裝了 httpserverutility對象,在程序中使用 server 指令取得的對象,都是來自於httpcontext.current.server屬性回傳而得。

目前很多人對Asp.net和asp很混淆,有的甚至認為兩者是一樣的!因為他們根本不瞭解,其實兩者是不同,asp是解釋性編程框架,而Asp.net是編譯性框架,Asp.net無論是從執行效率和安全上都遠遠超過asp,而文件上也是有差異的asp的後綴是.asp 而Asp.net則是.aspx和.aspx.cs,Asp.net實現了代碼分離。可以説讓代碼管理更加直觀。

Asp.net1.0和Asp.net1.1的設計是良好的,因為在Asp.net 2.0中只有很少的改動是修復已有的特性的,Asp.net保留了同之前版本相同的基礎,增加了新的、更高層此的特性支持,主要特性如下:豐富的控件 ,模板頁 ,主題 ,安全和成員資格 ,數據源控件 ,web部件 ,配置文件

Asp.net3.0並不存在,微軟使用.net framework3.0的名稱發佈了一系列的新的技術,其中最着名的有wpf,它是用於構建富客户端的全新用户界面技術,wcf使用於構建面向消息的服務技術,以及wf允許把複雜的業務邏輯過程建模為一組動作,不過.net framework3.0沒有包括新版本的clr或者Asp.net。

Asp.net 在一開始的時候是缺乏範本引擎的,其主因是.net framework本身是面向對象,且需要用繼承的方式才能夠延伸功能,大多數的開發人員都是由 system.web.ui.page 繼承並定義出新的基類,並撰寫要繪製 html 的方法,以及在他們的應用程序中修改以繼承該類,然而這個方法可能會被用在網站的很多地方,因而會大大的提升混合代碼與標記的複雜度,這個方法也只能在運行期才能夠以可視化的方式測試,無法在設計時期可視化,其他的開發人員總是使用原有的 asp方法來把每個網頁需要的部份包到網頁中,防止在每個網頁中都要撰寫相同的導覽代碼。

在 Asp.net 2.0 中,推出了主版頁面 (master page)的概念,它可以讓開發人員先行定義外觀版型 (*.master),再使用它來套用實際運行的網頁,網頁與主版頁面之間以 contentplaceholder的 id 做鏈接,以套用正確的內容到保留區中,開發人員也可以定義在保留區沒有套用時需要顯示的默認內容。在 Asp.net 3.5 中更進一步的支持設計時期的嵌套主版頁面,以及把網頁的 head 區塊納入 contentplaceholder 的範圍。

與主版頁面相關的,還有主題以及面板技術,這兩個技術允許開發人員或設計人員自行定義網頁的樣式設置以及套用的樣式支持,每個主題中可以包含數個面板檔,這些面板檔決定了控件要輸出時套用的樣式,開發人員則可以利用主題來決定不同的外觀要使用的樣式。

  • 文章版權屬於文章作者所有,轉載請註明 https://wjfww.com/xinde/jingxuan/yvv4e7.html
專題