跳過到頁腳內容
Iron Academy Logo
C# 應用程式
C# 應用程式

其他分類

在 C# 構建「創建團隊」表單—第 12 課(Key Corey)解釋

Tim Corey
48m 03s

在本文中,我們將透過Tim Corey的"C# App Start To Finish Lesson 12 – Create Team Form Part 1",深入了解C#應用程式開發。 Tim逐步帶領我們建構一個真實世界的表單,展示如何將複雜的UI任務拆分為較小且容易處理的部分。 透過他的方式,您將更清楚如何使用乾淨的模式和實用的開發策略設計和實現功能性Windows Forms應用程式。

分解複雜度

Tim首先強調開發者應有的關鍵心態:不要被複雜度所淹沒。 他解釋說,表單乍看之下可能很複雜,但解決方案是將其分解成較小的部分。 Tim表示,一旦您將其孤立為容易管理的部分,問題就會變得容易解決。 這一哲學是他教學風格的核心,並幫助初學者在開發過程中保持專注和自信。

理解Create Team表單

Tim展示了"Create Team"表單,並指出其中包含按鈕、列表和表格等多個UI元件。 他指出,"Add New Member"部分本質上是自己的表單,類似於早前課程中建立的"Create Prize"表單。 這種功能的區隔是至關重要的,因為它允許開發者一次實施一個部分,而不會在整個表單的複雜性中迷失。

明確目的:新增人員

Tim解釋說,"Add New Member"部分技術上是在新增一個人,而不是團隊成員。 在資料庫中,people 表包含像名字、姓氏、電子郵件和手機等欄位。 團隊成員只是由人員ID和團隊ID表示。 Tim指出,即使技術上新增的是一個人,但稱其為"Add New Member"很合理,因為這符合表單的目的。

創建按鈕事件

Tim演示了如何創建"Create Member"按鈕的按鈕事件。 他解釋您可以通過雙擊按鈕或使用屬性面板來創建事件。 他還說明了命名規範如何影響事件名稱,以及為什麼一致的命名很重要,以避免日後的混淆。 Tim強調,應在創建事件之前命名,以避免額外的手動更改。

事件中的邏輯

Tim概述了按鈕事件必須執行的步驟:

  1. 驗證表單

  2. 創建Person模型

  3. 將人員保存到資料庫或文本文件

  4. 清除表單

他將此工作流程與之前的"Create Prize"表單進行比較,表明相同的模式適用。 Tim解釋說,重用這樣的模式能使開發更快更可靠。

表單驗證

Tim構建了一個名為ValidateForm()的驗證方法,並解釋了命名一致性的重要性。 他建議驗證可以根據需求簡單或複雜。 目前,Tim將其保持在基本水平:所有四個欄位必須包含文本。 他討論了驗證如何在後續應改進,以檢查電子郵件格式或電話號碼長度,不過對於本課程,基礎驗證已經足夠繼續前進。

創建並保存Person模型

Tim展示了如何從表單字段創建PersonModel,然後將其傳遞給全域連接進行保存。 他解釋這個過程與獎品表單相同:驗證→創建模型→保存→清除。 Tim強調,重用這樣的模式能夠使開發更快和更可靠。

實現CreatePerson方法

Tim介紹了在IDataConnection介面中所需的新方法CreatePerson(PersonModel model)的界面更新。 他解釋說,添加此方法會在所有實現該接口的現有類中引發編譯錯誤。 Tim指出這是一件好事,因為它迫使您在所有連接器中正確實現新方法。

創建SQL存儲程序

Tim切換到SQL來創建存儲程序spPeople_Insert。 他仔細映射了諸如FirstName、LastName、EmailAddress和CellPhoneNumber等參數,確保了正確的數據類型和大小。 Tim解釋說,準確的類型很重要,能防止錯誤並確保數據的完整性。

他還解釋了如何使用SCOPE_IDENTITY()捕捉新創建的ID並將其傳回給應用程式。 這一步對於在資料庫和應用模型中保持一致的ID至關重要。

測試SQL連接器

Tim通過運行表單並插入人員到資料庫來測試SQL連接器。 他打開一個查詢窗口,並確認數據正確顯示在dbo.People表中。 Tim指出,頻繁測試很重要,可以提早發現問題並確認系統按預期運行。

實現文本連接器

然後,Tim實現了文本連接器版本的相同功能。 他解釋說,代碼結構相似,但現在使用的是CSV文件而不是SQL。 他創建了一個名為PersonModels.csv的文件常量,並添加了方法以把CSV數據轉換為PersonModel對象。

Tim還討論了數據格式的重要性,以及逗號分隔值在數據字段內存在逗號時會引發的問題。 他建議採用不同的分隔符或驗證輸入以避免問題。

創建ConvertToPersonModels方法

Tim編寫了ConvertToPersonModels()方法,以解析CSV行並轉換為PersonModel對象。 他展示了如何分割行,並將值映射到模型屬性中,然後將它們添加到列表中。Tim強調映射順序必須符合CSV列的順序。

保存到CSV文件

Tim創建了SaveToPeopleFile()方法以將PersonModel對象列表保存回CSV文件。他解釋如何使用逗號分隔值構建字符串行並將其寫入文件。Tim強調使用正確的文件路徑以確保數據正確保存的重要性。

最終測試和結果

Tim通過添加多個成員並確認CSV文件正確更新來測試文本連接器。 他確認ID增量正確,並保存所有數據字段。 Tim指出,這部分表單的過程現在已經完成。

結論與後續步驟

Tim通過解釋這一部分現已完成來結束本課程。 下一步將是連接團隊成員列表並完成團隊創建。 Tim提醒學習者,隨著模式的重複和重用,這一過程會變得更容易,而這正是為什麼資深開發者似乎速度較快的原因——他們重用驗證過的模式。

Hero Worlddot related to 在 C# 構建「創建團隊」表單—第 12 課(Key Corey)解釋
Hero Affiliate related to 在 C# 構建「創建團隊」表單—第 12 課(Key Corey)解釋

通過分享您所愛的東西賺得更多

您是否在為使用.NET、C#、Java、Python或Node.js的開發者創建內容?將您的專業知識轉化為額外收入!

鋼鐵支援團隊

我們每週 5 天,每天 24 小時在線上。
聊天
電子郵件
打電話給我