Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
第二章 C#、VB基本語法
E-Mail -- mis2000lab@yahoo.com.tw
網站 http://www.dotblogs.com.tw/mis2000lab/
ASP.NET學習教材(松崗),作者:MIS2000 Lab.,...
MIS2000 Lab.簡介
• 工作室成員包含:大學教授、業界技術經理、微軟MVP獎得主。
• 想要親自上課,請參考:
http://www.dotblogs.com.tw/mis2000lab/archive/2011/06/24/2980...
MIS2000 Lab.當面授課,機會難得!
• ASP.Net (Web Form) 上課內容&報名,請恰:
• http://www.dotblogs.com.tw/mis2000lab/archive/2011/06/24/29807.a...
建立一個「新網站(WebSite)」
• 畫面「左側」是用來選擇
程式語法(例如:VB或是C#)。
ASP.NET學習教材(松崗),作者:MIS2000 Lab.,網站
http://www.dotblogs.com.tw/mis2000lab/
在網站中,新增一個ASP.NET網頁
ASP.NET學習教材(松崗),作者:MIS2000 Lab.,網站
http://www.dotblogs.com.tw/mis2000lab/
ASP.NET網頁的「HTML畫面」
• HTML碼第一列<%@ Page指示詞,強調這個網頁使用的語法(是
VB或C#),而且註明後置程式碼(Code Behind)檔名。
• 第二列<!DOCTYPE html>是
HTML5必備條件。
•...
後置程式碼(Code Behind)
• 在HTML畫面中央的空白處,按下「滑鼠右鍵」
• 然後選取「檢視程式碼」就能看到右圖。
ASP.NET學習教材(松崗),作者:MIS2000 Lab.,網站
http://www.dotblogs.co...
寫完程式以後,
請回到「HTML畫面」執行成果
• C#程式最後請加上結尾符號(; 分號)
• VB則不用加上分號(;)
• 回到「HTML畫面」執行並觀看成果,
• 請選「在瀏覽器中檢視」。
ASP.NET學習教材(松崗),作者:MIS200...
2-3 Response物件
• 透過瀏覽器上網的完整流程。
• 要求(Request)與回應(Response)的差異。
ASP.NET學習教材(松崗),作者:MIS2000 Lab.,網站
http://www.dotblogs.com.t...
2-3 Response物件
• 2-3-1 .Write()方法,將資料呈現在畫面上
• Response.Write(“Hello”)
• 2-3-2 .Redirect()方法,重新導向
• Response.Redirect(“http...
2-4 if(C#) / If(VB)判別式
• 範例8.aspx
if (條件式)
{
「符合條件式」的話,便執行這裡的程式碼。
}
else
{
「"不"符合條件式」的話,便執行這裡的程式碼。
}
ASP.NET學習教材(松崗),作者:MI...
if判別式與Request的用法
• 範例8.aspx
• 在網頁程式裡面傳遞變數的"值“
• 這是http verb的get方式,
• 每一種網頁程式都可用。
• C# -- Request[u_number]
• VB – Request(...
巢狀的if…判別式
• 上一頁的範例8.aspx,當你輸入10,剛好不「大於」也不「小於」
10而出現不精準的成果。
• 範例10.aspx透過巢狀(nest) if判別式來解決。
ASP.NET學習教材(松崗),作者:MIS2000 Lab....
2-4-4 if… 判別式的困境
Q:使用者只被允許輸入「1、2、3」這三個數字。
11.aspx?u_number= 請輸入數字
規則如下:
如果輸入的數字,是1~3之外的數字,就會出現警告訊息。
輸入「1」會立刻連結到www.find....
2-5 switch(C#)與 Select Case(VB)判別式
• 克服上一頁的困境,讓程式更簡潔、易懂
• C#語法
switch (變數) {
case 值1:
符合條件者,執行這區的程式碼。
break;
case 值2:
符合條件...
2-6 for(C#) / For…Next(VB) 計數式迴圈
• VB語法
For 變數 = 啟始值 to 結束值
‘For迴圈,每跑一圈自動幫「變數」加一
符合條件,就會反覆執行這區的程式碼
Next
• C# 語法
for ( int ...
變數的累加 (初學者的不適應)
• 以VB語法為例(請看右圖)
• C#語法如下:
int my_sum = 0;
for(int i=0; i<100; i++)
{ my_sum++;
//也可寫成 my_sum = my_sum +1;
...
for迴圈 與 字串相連(重點!)
• 2-6-2 字串相連的「+」符號。在畫面上,連續印出a1,a2,
a3……,a100
• 範例14.aspx
• C#使用 + 符號來做字串相連(串連)。
• VB使用 & 符號
• 「如果您不會靈活地運...
2-7 while(C#) / While…End While(VB)
條件式迴圈
• VB語法
While 條件式
符合條件(true)執行這一區
End While
• C#語法
while (條件式)
{
符合條件(true)執行這一區;...
2-8-1 算數運算子
VB語法 C#語法
加 法 + +
減 法 - -
乘 法 * *
除 法
/
兩數相除,傳回
「浮點數」的結果
/
如果您希望兩數相除,傳回
「浮點數」的結果。
請寫成:5.1 / 2,答案會是
2.55。
除 法
(...
比較運算子、條件式運算子
比較運算子 VB語法 C#語法
等於
例如:23=23,答案為 true。 = ==
不等於 <> !=
條件式運算子
AND AND &&
OR OR ||
ASP.NET學習教材(松崗),作者:MIS2000 La...
2-10 Visual Studio的「專案」與「網站」
有何不同?
• 一、適合採用Web應用程式專案(Project)的情況包括:
1. 您想要在"不"停止偵錯工作階段的情況下編輯程式碼。
2. 您想要針對程式碼執行單元測試(Unit Te...
• 二、適合採用網站(WebSite)的情況包括:
1. 您想要同時在單一WebSite中,"同時"包含C#和Visual Basic程式碼的網頁與程式(根據
預設,Web應用程式"專案"會根據專案檔中的語言設定進行編譯。雖然可建立例外狀
況,...
Upcoming SlideShare
Loading in …5
×

02 C# & VB基本語法 for ASP.NET

1,258 views

Published on

ASP.NET學習教材 VB & C# (松崗出版) 作者:MIS2000 Lab.

作者網站: http://www.dotblogs.com.tw/mis2000lab/
另有ASP.NET課程,歡迎參與。由我本人親自授課。

YouTube線上教學影片:https://www.youtube.com/channel/UC6IPPf6tvsNG8zX3u1LddvA

書籍購買:
http://24h.pchome.com.tw/books/prod/DJAA2V-A84340111
http://24h.pchome.com.tw/books/prod/DJAA2V-A83003754

Published in: Education
  • Be the first to comment

  • Be the first to like this

02 C# & VB基本語法 for ASP.NET

  1. 1. 第二章 C#、VB基本語法 E-Mail -- mis2000lab@yahoo.com.tw 網站 http://www.dotblogs.com.tw/mis2000lab/ ASP.NET學習教材(松崗),作者:MIS2000 Lab.,網站 http://www.dotblogs.com.tw/mis2000lab/
  2. 2. MIS2000 Lab.簡介 • 工作室成員包含:大學教授、業界技術經理、微軟MVP獎得主。 • 想要親自上課,請參考: http://www.dotblogs.com.tw/mis2000lab/archive/2011/06/24/29807.aspx • Blog(範例與新技術):http://www.dotblogs.com.tw/mis2000lab/ • FaceBook社群:https://www.facebook.com/mis2000lab • YouTube教學影片(不定期更新):https://www.youtube.com/channel/UC6IPPf6tvsNG8zX3u1LddvA • G+社群:https://plus.google.com/u/0/100202398389206570368/posts ASP.NET學習教材(松崗),作者:MIS2000 Lab.,網站 http://www.dotblogs.com.tw/mis2000lab/ 2
  3. 3. MIS2000 Lab.當面授課,機會難得! • ASP.Net (Web Form) 上課內容&報名,請恰: • http://www.dotblogs.com.tw/mis2000lab/archive/2011/06/24/29807.aspx • 自2011年初開課以來,全省已經有650人次以上參與本課程! • E-Mail -- mis2000lab@yahoo.com.tw ASP.NET學習教材(松崗),作者:MIS2000 Lab.,網站 http://www.dotblogs.com.tw/mis2000lab/ 3
  4. 4. 建立一個「新網站(WebSite)」 • 畫面「左側」是用來選擇 程式語法(例如:VB或是C#)。 ASP.NET學習教材(松崗),作者:MIS2000 Lab.,網站 http://www.dotblogs.com.tw/mis2000lab/
  5. 5. 在網站中,新增一個ASP.NET網頁 ASP.NET學習教材(松崗),作者:MIS2000 Lab.,網站 http://www.dotblogs.com.tw/mis2000lab/
  6. 6. ASP.NET網頁的「HTML畫面」 • HTML碼第一列<%@ Page指示詞,強調這個網頁使用的語法(是 VB或C#),而且註明後置程式碼(Code Behind)檔名。 • 第二列<!DOCTYPE html>是 HTML5必備條件。 • .NET的HTML標籤都會多一行 runat="server",表示這些控制項 是在IIS的網頁伺服器端執行。 ASP.NET學習教材(松崗),作者:MIS2000 Lab.,網站 http://www.dotblogs.com.tw/mis2000lab/
  7. 7. 後置程式碼(Code Behind) • 在HTML畫面中央的空白處,按下「滑鼠右鍵」 • 然後選取「檢視程式碼」就能看到右圖。 ASP.NET學習教材(松崗),作者:MIS2000 Lab.,網站 http://www.dotblogs.com.tw/mis2000lab/
  8. 8. 寫完程式以後, 請回到「HTML畫面」執行成果 • C#程式最後請加上結尾符號(; 分號) • VB則不用加上分號(;) • 回到「HTML畫面」執行並觀看成果, • 請選「在瀏覽器中檢視」。 ASP.NET學習教材(松崗),作者:MIS2000 Lab.,網站 http://www.dotblogs.com.tw/mis2000lab/
  9. 9. 2-3 Response物件 • 透過瀏覽器上網的完整流程。 • 要求(Request)與回應(Response)的差異。 ASP.NET學習教材(松崗),作者:MIS2000 Lab.,網站 http://www.dotblogs.com.tw/mis2000lab/
  10. 10. 2-3 Response物件 • 2-3-1 .Write()方法,將資料呈現在畫面上 • Response.Write(“Hello”) • 2-3-2 .Redirect()方法,重新導向 • Response.Redirect(“http://www.asp.net”) • 2-3-3 .End()方法,程式中斷停止 • Response.End() ASP.NET學習教材(松崗),作者:MIS2000 Lab.,網站 http://www.dotblogs.com.tw/mis2000lab/
  11. 11. 2-4 if(C#) / If(VB)判別式 • 範例8.aspx if (條件式) { 「符合條件式」的話,便執行這裡的程式碼。 } else { 「"不"符合條件式」的話,便執行這裡的程式碼。 } ASP.NET學習教材(松崗),作者:MIS2000 Lab.,網站 http://www.dotblogs.com.tw/mis2000lab/
  12. 12. if判別式與Request的用法 • 範例8.aspx • 在網頁程式裡面傳遞變數的"值“ • 這是http verb的get方式, • 每一種網頁程式都可用。 • C# -- Request[u_number] • VB – Request(u_number) • 請您在瀏覽器的「網址列」後方, 自己補上「?u_number=15」這段字。 ASP.NET學習教材(松崗),作者:MIS2000 Lab.,網站 http://www.dotblogs.com.tw/mis2000lab/
  13. 13. 巢狀的if…判別式 • 上一頁的範例8.aspx,當你輸入10,剛好不「大於」也不「小於」 10而出現不精準的成果。 • 範例10.aspx透過巢狀(nest) if判別式來解決。 ASP.NET學習教材(松崗),作者:MIS2000 Lab.,網站 http://www.dotblogs.com.tw/mis2000lab/
  14. 14. 2-4-4 if… 判別式的困境 Q:使用者只被允許輸入「1、2、3」這三個數字。 11.aspx?u_number= 請輸入數字 規則如下: 如果輸入的數字,是1~3之外的數字,就會出現警告訊息。 輸入「1」會立刻連結到www.find.org.tw網站。 輸入「2」會立刻連結到www.iii.org.tw網站。 輸入「3」會立刻連結到www.yahoo.com.tw網站。 請使用Response.Redirect( )來做網頁的連結轉換。 請看範例11.aspx 或是透過下一頁的switch(C#) / Select Case(VB)程式來解決) ASP.NET學習教材(松崗),作者:MIS2000 Lab.,網站 http://www.dotblogs.com.tw/mis2000lab/
  15. 15. 2-5 switch(C#)與 Select Case(VB)判別式 • 克服上一頁的困境,讓程式更簡潔、易懂 • C#語法 switch (變數) { case 值1: 符合條件者,執行這區的程式碼。 break; case 值2: 符合條件者,執行這區的程式碼。 break; ……(以此類推) default: 「不」符合上述的所有條件者,執行這區的程式碼。 break; } • VB語法 Select Case 變數 Case 值1 符合條件者,執行這區的程式碼。 Case 值2 符合條件者,執行這區的程式碼。 ……(以此類推) Case Else 「不」符合上述的所有條件者,執行這區的程式碼。 End Select ASP.NET學習教材(松崗),作者:MIS2000 Lab.,網站 http://www.dotblogs.com.tw/mis2000lab/
  16. 16. 2-6 for(C#) / For…Next(VB) 計數式迴圈 • VB語法 For 變數 = 啟始值 to 結束值 ‘For迴圈,每跑一圈自動幫「變數」加一 符合條件,就會反覆執行這區的程式碼 Next • C# 語法 for ( int 變數 = 啟始值; i < 結束值; i++) { //for迴圈,每跑一圈自動幫「變數i 」加一 符合條件,就會反覆執行這區的程式碼; } ASP.NET學習教材(松崗),作者:MIS2000 Lab.,網站 http://www.dotblogs.com.tw/mis2000lab/
  17. 17. 變數的累加 (初學者的不適應) • 以VB語法為例(請看右圖) • C#語法如下: int my_sum = 0; for(int i=0; i<100; i++) { my_sum++; //也可寫成 my_sum = my_sum +1; } ASP.NET學習教材(松崗),作者:MIS2000 Lab.,網站 http://www.dotblogs.com.tw/mis2000lab/
  18. 18. for迴圈 與 字串相連(重點!) • 2-6-2 字串相連的「+」符號。在畫面上,連續印出a1,a2, a3……,a100 • 範例14.aspx • C#使用 + 符號來做字串相連(串連)。 • VB使用 & 符號 • 「如果您不會靈活地運用這個『+』符號(VB語法請用&符號),那麼您的ASP.NET 甚至是其他網頁程式設計(ASP、PHP、JSP)都不太可能有傑出的表現。」 • 「網頁程式,是一種字串相連的藝術(或說魔術)」。等到本書後續的聊天室範例、 FileUpload「多個檔案、批次上傳」,您就會知道「字串相連」的妙用無窮。 ASP.NET學習教材(松崗),作者:MIS2000 Lab.,網站 http://www.dotblogs.com.tw/mis2000lab/
  19. 19. 2-7 while(C#) / While…End While(VB) 條件式迴圈 • VB語法 While 條件式 符合條件(true)執行這一區 End While • C#語法 while (條件式) { 符合條件(true)執行這一區; } 詳見範例14.aspx,一樣可做到「在畫面上,連續印出a1,a2, a3……,a100」 ASP.NET學習教材(松崗),作者:MIS2000 Lab.,網站 http://www.dotblogs.com.tw/mis2000lab/
  20. 20. 2-8-1 算數運算子 VB語法 C#語法 加 法 + + 減 法 - - 乘 法 * * 除 法 / 兩數相除,傳回 「浮點數」的結果 / 如果您希望兩數相除,傳回 「浮點數」的結果。 請寫成:5.1 / 2,答案會是 2.55。 除 法 (整數除法,傳回「商」) 例如:23 3,答案為7。餘數不 計。 兩數相除,傳回 「整數」的結果。 / 兩數相除,傳回 「整數」的結果。 除 法 (傳回「餘數」) Mod % ASP.NET學習教材(松崗),作者:MIS2000 Lab.,網站 http://www.dotblogs.com.tw/mis2000lab/
  21. 21. 比較運算子、條件式運算子 比較運算子 VB語法 C#語法 等於 例如:23=23,答案為 true。 = == 不等於 <> != 條件式運算子 AND AND && OR OR || ASP.NET學習教材(松崗),作者:MIS2000 Lab.,網站 http://www.dotblogs.com.tw/mis2000lab/
  22. 22. 2-10 Visual Studio的「專案」與「網站」 有何不同? • 一、適合採用Web應用程式專案(Project)的情況包括: 1. 您想要在"不"停止偵錯工作階段的情況下編輯程式碼。 2. 您想要針對程式碼執行單元測試(Unit Test),而且程式碼位於與ASP.NET網 頁相關聯的類別(Class)檔案中。 3. 您想要參考與獨立類別中之頁面和使用者控制項(UC,User Control)相關聯 的類別。 4. 您要建立"多個"Web專案(Project)之間的專案相依性。 5. 您想用編譯器將整個網站建立成單一組件(編譯成一個.DLL檔案,放在/bin目 錄下)。 6. 您要控制所產生之網站的組件名稱和版本號碼。 7. 您想要使用MSBuild或Team Build來編譯專案。例如,您可能想要加入建置前 後的步驟。 8. 您想要避免將原始程式碼放在實際上線執行的Web伺服器上(編譯成一個.DLL 檔案之後,後置程式碼可以不公開,只留畫面.aspx檔案即可)。 9. 您想要使用Visual Studio所提供的"自動化部署"工具。 ASP.NET學習教材(松崗),作者:MIS2000 Lab.,網站 http://www.dotblogs.com.tw/mis2000lab/
  23. 23. • 二、適合採用網站(WebSite)的情況包括: 1. 您想要同時在單一WebSite中,"同時"包含C#和Visual Basic程式碼的網頁與程式(根據 預設,Web應用程式"專案"會根據專案檔中的語言設定進行編譯。雖然可建立例外狀 況,不過相當困難)。 2. 您想要在Visual Studio中,直接開啟「實際上線的Web網站」,並且使用FTP進行即時 更新。 3. 您"不"想要明確編譯專案(不想編譯成一個.DLL檔案),以便進行部署。 4. 如果您「預先編譯」網站,您希望編譯器為網站建立多個組件(可能是每個網頁或使 用者控制項各一個組件,或每個資料夾各一個或多個組件)。 5. 您希望能夠以"複製"的方式,將新版本更新至實際上線的Web伺服器,或直接在實際 執行的Web伺服器上,以「編輯檔案(直接動手改程式碼)」的方式直接更新"個別" 的檔案。 6. 如果您「預先編譯」網站,您想要更新"個別"的ASP.NET網頁(.aspx檔),而不需要 重新編譯整個網站。 7. 您想要在實際上線的Web伺服器上面,保留另一份原始程式碼,因為它可以做為額外 的備份複本。 ASP.NET學習教材(松崗),作者:MIS2000 Lab.,網站 http://www.dotblogs.com.tw/mis2000lab/

×