FileUpload + FormView(或DetailsView)看似簡單,但不好做 #1--初學者的盲點

摘要:FileUpload + FormView(或DetailsView)看似簡單,但不好做 #1--初學者的盲點





 

 

 

讀者來信的問題,看似很簡單。

但問題重重.........................

 

也從這個問題裡面,看到「初學者」在學習 ASP.NET的  盲  點

 

 

程式的執行成果:

      把 FormView的新增樣版(InsertItemTemplate),裡面加上 FileUpload控制項

      希望「新增」一筆記錄的同時,也能順便「上傳」檔案

========================================================

這個範例會用到很多技巧。  「不可能」拼拼湊湊完成

 

我們先看看底下的設計畫面,

自己評估一下,看看自己(初學者)是不是真如自己想的那麼厲害?真的練習的那麼熟練?

真的這麼天才.....上網找兩段Code,隨手湊一湊、兜一兜就能完成???

 

(1). 想要用 FormView做「新增一筆記錄」,

我猜想他對於 ADO.NET不熟悉,只好依賴 SqlDataSource幫他處理資料庫的讀寫

 

(2). FileUpload,檔案上傳。到處都有現成的範例、程式碼。

 

好啊!試試看,兩者混合,看看能炒出什麼菜?

...........................................................................................................................................

 

首先,把 FormView的樣版做好,

      檔案上傳的「日期」、

      檔案上傳(FileUpload)......這兩者改一下,不要用現成的 TextBox,改用合適的控制項。

 

改了樣版內部的「控制項」,搭配「DataBinding」的設定,任何入門書都會講到。

但自己有沒有熟練?能否變通?.......要看自己的努力了

 

下面的設定圖片,可以自我評估。
看看自己有多熟練,就知道自己功力到哪裡?

 

...........如果不會做,請看我的書本(上集) Ch.6~8

========================================================

 

很不錯。您把日曆控制項與相關設定.....做好了

相同的技巧,把 FileUpload拉進來吧!

 

注意看!要出事了

注意看上面的 FileUpload,只有出現「Enable屬性」

 

您想用那些「畫面設定」?「精靈步驟」?

 

套用不上啊!

不信?要硬幹?......執行結果如下:

 

 

FileUpload要放在「大型控制項」的樣版、身體裡面,做 DataBinding Expression

沒有那麼簡單。

 

FileUpload本來就不是「聰明」的控制項,功能不強......必須自己 "寫程式"處理的。

Repeater ? PlaceHolder ? ...... 這些控制項不也如此,幾乎一片空白,幾乎沒有精靈功能可用

 

這種控制項,要拿來搭配精靈、設定兩下就OK,........的確都不容易

 

 

我有幾個方法可做,但都要寫程式......

放心!我會提供一個範例給大家。下一篇文章會分享給大家 .........

FileUpload + FormView(或DetailsView)看似簡單,但不好做 #2--簡單的範例(.FindControl()方法、SqlDataSource參數)

 

但請「初學者」自己想想,您是怎麼學習?怎麼看待ASP.NET呢?

 

1.   書本打開,找範例、找程式碼。

湊在一起?不會動?

 

2.  不要說程式碼「湊」在一起不會動

就連Visual Studio的操作、設定(大型控制項)、SqlDataSource的變化.....都不熟練、甚至不會做的人

比比皆是。

 

程式不會寫?     精靈也不會用(不熟練)?

說真的,要「湊」出什麼東西跟客戶交代?

 

 

世界上,如果有這種工作 --- 人人都能出來、就能交差

那這種工作不要做!

價錢一定很爛!也沒有將來!

 

太多年輕人可以取代(他們成本低)

 

寫程式,如果「您認為」也是人人能出來的工作,那真的不要做。

沒將來的工作,不要碰。

 

 

有無磨練體驗,就像是白切肉與滷肉的差別。白切肉水煮就好了,但滷肉要熬很久;白切肉沾醬油一樣會有像滷肉的鹹味,但水一沖,味道就沒有,滷肉就不會,這就是有無時間磨練的差別。所以什麼該快、什麼該慢,一定要想清楚,不是隨社會一切都要快。

杜書伍:有無磨練體驗,就像白切肉與滷肉的差別   http://topic.cw.com.tw/leader/article7-1.aspx

 

[轉貼] PTT -- 軟體人的心路歷程分享 (補習電腦、學習寫程式、出書、出國、求職...這位前輩都經歷過了)
http://www.dotblogs.com.tw/mis2000lab/archive/2012/12/12/85599.aspx



[職場]澳洲屠夫(台勞)的新聞...人生不能用數學來計算。專業需要累積,「大智若愚」才是真的聰明
http://www.dotblogs.com.tw/mis2000lab/archive/2012/09/24/74991.aspx

 

 

 

回過頭來,想想這個問題----

 

1.  把大型控制項的樣版、身體裡面,加入「子控制項」,該怎麼抓到他?

上集,第十章。會用 .FindControl()方法嗎?

FileUpload的程式,好像要搭配一個 Button按鈕,放在大型控制項裡面,怎麼用?

上傳以後,怎麼交給 SqlDataSource新增一筆記錄到DB裡面?

.....好多眉眉角角的細節,遇上了.....都沒解?怎麼辦?

(因為初學者一開書,就是挑範例、抄程式碼,        

     縱然有提到這些技巧與基礎,他也跳過不看了,所以卡關、卡關、卡關)

 

 

2.  SqlDataSource能有多少變化?能幫我們多少忙?......我能把玩、練習到「知道他的極限在哪裡嗎?」

如果做不到這一步,初學者永遠不會進步!

 

因為他心理還在「執著」,幻想哪個 "控制項"能救我?

        哪個控制項一拉,就能完成。

(例如: 我要做XXX功能,請問該用哪個控制項啊?)

 

網路論壇上、公司新人裡.....您看過多少這種人??

誰要花錢 22K ? 找一個人來操作軟體?拉拉控制項?

 

初學者,如果無法把"基礎"熟練(找到這些精靈、設定的極限,知道在此之後,他們無能為力了)。

   就永遠無法「定下心」(或是說「死心」)!......願意專心「學程式」來做事

 

3. 如果SqlDataSource做不到.....我該怎麼辦?自己有能力寫 ADO.NET程式嗎?

(等等~~ T-SQL指令學了沒?  

                 很多人不會,所以遇見問題,不知道他是「程式」不熟?還是「SQL指令」不熟?)

 

 

很多人都說,我好急!我沒時間學!

我沒法用幾個月把基礎打好,再來找工作

 

那.....結果就是:沒人找你工作(你能力不夠!)

                    你就算找到工作,也會被淘汰(因為這種態度,就是這樣了)。永遠沒有足夠的能力可以長久做下去

 

然後.......工作上一堆爛履歷,A公司半年、B公司三個月、C公司五個月................

 

有這種履歷,

      一兩次可以瞎掰,說是公司不好!公司爛!沒制度

      三次以後,面試官多多少少也看得出來........絕對是「人格特質」出了問題,

              例如:求速成、  沒耐心、  不會走卻想飛、     一個月沒變成絕世高手,就自己帥氣遞辭呈?

 

英文叫做 Quitter半途而廢者!遇見問題就想逃、想放棄.....不敢面對失敗,先逃再說.....鴕鳥)

同義字:失敗者defeatist 、逃兵deserter 、懶人shirker......

 

找不到工作?工作永遠作不長?........除了環境因素,剩下的就是「專業能力」夠不夠?

 

 

在質疑「大環境不好」、找不到工作之前?

有沒有先質疑自己夠不夠「專業」

 

 

 請看下一篇文章:

FileUpload + FormView(或DetailsView)看似簡單,但不好做 #2--簡單的範例(.FindControl()方法、SqlDataSource參數)

 

 

 

 

 

 

我將思想傳授他人, 他人之所得,亦無損於我之所有;

猶如一人以我的燭火點燭,光亮與他同在,我卻不因此身處黑暗。----Thomas Jefferson

線上課程教學,遠距教學 (Web Form 約 51hr)  https://dotblogs.com.tw/mis2000lab/2016/02/01/aspnet_online_learning_distance_education_VS2015

線上課程教學,遠距教學 (ASP.NET MVC 約 135hr)  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.主講   事先錄好的影片,並非上課側錄!   觀看時,有如「一對一」面對面講課