這是投票範例的最後一篇,
不會太難,但須要一點基礎。
附上執行流程與VB / C#程式碼,讓讀者能自己回家練習。
(內含 VB與 C#程式 。 2009/12/4更新。)
關於投票的程式,本文將會是最後一篇了。
搭配前三篇「投票區文章」,要學會它並不難!
沒看過這三篇的基礎,您(初學者)就不用費心了。
初學者還沒學會"走",就想"飛上天",......那並不容易。
按部就班,慢慢來吧
- [習題]ASP.NET的 簡易投票區 #1 -- 長條圖(繪製圖表)
- [習題]ASP.NET的 簡易投票區 #2 -- 不同的 Table設計,程式寫法也有差異
- [習題]ASP.NET的 簡易投票區 #3 -- 程式可以寫(改)得更好
..............................................................................................................................................................................
本範例與完整說明,已經改寫成書本內的文章,
並集結出書,收錄 在「[新 書上市]ASP.NET專題實務II(下集):範例應用與4.0新功能」
................................................................................................................................................................................
這是我在2001年寫好的作品,那時候還是ASP、JavaScript、HTML表單的時期,
我在2001年3月接手一個ASP網站,然後靠著自己一支一支程式慢慢讀程式碼來自修(因為之前的三個人,同時離職了)
幸好程式不難,我一個月後就開始寫新功能。
大約三個月後,寫出一些自己心裡會偷笑的小程式(但別人未必會覺得這是 "有水準" 的範例)
其中,有一個程式就是「ASP分頁」程式,可以做出前一頁、後一頁、前十頁、後十頁的功能。
而且底下的頁數,會固定以「十頁」作一個區間,不會無限制地延伸下去,以免破壞版面。
截至目前為止,市面上沒有一本ASP的電腦書願意公開這個功能。
但很多網站都有這功能......(表示很多人會寫啊!但不公開?)
坊間的電腦書作者,願意公開的都是下面這種成果:
(頁數一旦太多,整個畫面醜到爆!)
我改寫成 ASP.NET版(採用DataSet)之後,目前放在書本裡面的 14-4節,而且有詳細解說。
但稍有一點小複雜,請見諒。
曾經有人建議我:把分頁寫成一個模組,讓大家直接呼叫引用.......(嗯!有空的話,我再來作啦)
不過 ASP.NET 3.5開始也推出了 DataPager控制項,上述的範例,似乎也沒啥價值了。
=========================================================================================
另外一個程式就是「自動化投票區」。
那時候的網站,每一週要辦一次小投票。
每一週都要動手重寫,實在很煩。 後來我完成了一個很簡單的自動化投票區。流程如下:
第一,先在管理員的後台,自己設定題目。
因為是單選題,所以題目不會太多。
第二、當你按下按鈕之後,這次投票就會寫進DB。
這時候在網站的首頁上, User就會看見本週投票的「題目」與「選項」。
程式會自動到DB裡面,抓取題目、選項名稱,自動組合到首頁上面。 是動態產生,不是寫死的。
而且會自動關閉上一週的舊投票(User無法繼續投票了,於是就關閉囉)
第三、投票完成後,會立刻看見得票數與成果。
根據上一篇文章([習題]ASP.NET的 簡易投票區 #3 -- 程式可以寫(改)得更好 )的建議,
底下的長條圖,採用「得票率%」來作,不會有圖片太長,破壞畫面一事!
====================================================
因為共用同一個資料庫,
所以歷年的投票記錄,隨時都可以打開來看!
第四、有一個「歷年投票回顧區」
全部的程式,只有四支。
所以上圖的歷史回顧區,點選任何一次投票,都會回到上上圖來展現(長條圖)
這個範例需要的基礎如下:
這個程式並不難,只要您能參透本書 18.3節的範例,就能豁然開朗。 請看:
程式的寫法完全一樣(底下有VB / C#兩種版本給您參考)。 參不透的話,就麻煩了。
簡單的說,就是用「字串連接」的方式,來代替控制項的ID。以迴圈來處理之。
搭配前三篇「投票區文章」,要學會它並不難!
沒看過這三篇的基礎,您(初學者)就不用費心了。 初學者還沒學會"走",就想"飛上天",......那並不容易。
按部就班,慢慢來吧
- [習題]ASP.NET的 簡易投票區 #1 -- 長條圖(繪製圖表)
- [習題]ASP.NET的 簡易投票區 #2 -- 不同的 Table設計,程式寫法也有差異
- [習題]ASP.NET的 簡易投票區 #3 -- 程式可以寫(改)得更好
當然,這個小範例是好多年前的作品了。
我不敢保證他 100%完美。
如果有機會的話,[出書計畫] ASP.NET範例集、問題集 (ASP.NET專題實務 /文魁出版 / 松崗出版,下集已經把這個範例完整收錄!),我會更詳細的解說它。
您就當這篇文章是「廣告文」吧~~
本範例與完整說明,已經改寫成書本內的文章,
並集結出書,收錄 在「[新 書上市]ASP.NET專題實務II(下集):範例應用與4.0新功能」
=======================================================================
但以前資策會當講師時,很奇怪,這個範例沒幾個人聽得懂(兩三梯次以後,我上課就不用這個範例了,對初學者太難!)
幸好DB + 程式,安裝步驟很簡單,學生都能安裝起來使用。 直接裝起來,用得開心也不錯~
我是有點擔心:如果現場上課解說,學生聽懂的機會都不高了。 透過書本與文字,其實更不容易講清楚
這個範例的 Table設計如下圖:
沒什麼難的,一行記錄候選人名稱,一行記錄他的得票率。如此而已。
因為這個投票是單選、又要放在首頁上。不可能有太多選項的,這樣畫面會整個醜掉。
我向來不是小氣的人,程式碼在這邊,
希望對您有幫助:Vote.rar (可下載,內含 VB與 C#程式 。 2009/12/4更新。)
最後還是廣告一下,請各位多多支持這本書。
只有書本有銷路,我才有機會繼續出書。 感恩!
買本書,把基礎好好學起來,才會「有能力」快速吸收網路上的各種討論與免費範例!
這是相輔相成的。
=====================================================================
本範例與完整說明,已經改寫成書本內的文章,
並集結出書,收錄 在「[新 書上市]ASP.NET專題實務II(下集):範例應用與4.0新功能」
=====================================================================
2011/5/9 補充: 從這個範例裡面,我們衍生出其他兩篇文章(範例),
自動化投票區、網路問卷、問卷調查,如何規劃與設計?#1(觀念篇)......考驗初學者能力的一門課
http://www.dotblogs.com.tw/mis2000lab/archive/2011/05/05/24244.aspx
自動化投票區、網路問卷、問卷調查,如何規劃與設計?#2 (程式篇)動態產生畫面與控制項
http://www.dotblogs.com.tw/mis2000lab/archive/2011/05/05/24269.aspx
我將思想傳授他人, 他人之所得,亦無損於我之所有;
猶如一人以我的燭火點燭,光亮與他同在,我卻不因此身處黑暗。----Thomas Jefferson
線上課程教學,遠距教學 (Web Form 約 51hr) https://dotblogs.com.tw/mis2000lab/2016/02/01/aspnet_online_learning_distance_education_VS2015
線上課程教學,遠距教學 (ASP.NET MVC 約 140hr) https://dotblogs.com.tw/mis2000lab/2018/08/14/ASPnet_MVC_Online_Learning_MIS2000Lab
寫信給我,不要私訊 -- mis2000lab (at) yahoo.com.tw 或 school (at) mis2000lab.net
(1) 第一天 ASP.NET MVC5 完整影片(5.5小時 / .NET 4.x版)免費試聽。影片 https://youtu.be/9spaHik87-A
(2) 第一天 ASP.NET Core MVC 完整影片(3小時 / .NET Core 6.0~8.0)免費試聽。影片 https://youtu.be/TSmwpT-Bx4I
[學員感言] mis2000lab課程評價 - ASP.NET MVC , WebForm 。 https://mis2000lab.medium.com/%E5%AD%B8%E5%93%A1%E6%84%9F%E8%A8%80-mis2000lab%E8%AA%B2%E7%A8%8B%E8%A9%95%E5%83%B9-asp-net-mvc-webform-77903ce9680b
ASP.NET遠距教學、線上課程(Web Form + MVC)。 第一天課程, "完整" 試聽。
......... facebook社團 https://www.facebook.com/mis2000lab ......................
......... YouTube (ASP.NET) 線上教學影片 https://www.youtube.com/channel/UC6IPPf6tvsNG8zX3u1LddvA/
Blog文章 "附的範例" 無法下載,請看 https://dotblogs.com.tw/mis2000lab/2016/03/14/2008_2015_mis2000lab_sample_download
請看我們的「售後服務」範圍(嚴格認定)。
......................................................................................................................................................
ASP.NET MVC => .NET Core MVC 線上教學 ...... 第一天課程 完整內容 "免費"讓您評估 / 試聽
[遠距教學、教學影片] ASP.NET (Web Form) 課程 上線了!MIS2000Lab.主講 事先錄好的影片,並非上課側錄! 觀看時,有如「一對一」面對面講課。