הוספת תמיכה בחיפוש מונחים מרובים
האפליקציה 'חיות מחמד Contoso' עוזרת למצוא בתים חדשים עבור חיות מחמד נטושות. הצוות מעוניין לשפר את תכונת החיפוש כדי לאפשר למשתמשים להזין מונחים מרובים בעת חיפוש אחר כלבים לאמץ.
מפרט חיפוש
בתרגיל אתגר ראשון זה, עליך לעדכן את תכונת החיפוש של מונח יחיד כדי לאפשר למשתמשים להזין מונחי חיפוש מרובים כשהם מופרדים באמצעות פסיקים.
איסוף מונחי חיפוש מרובים מהמשתמש
- אפשר למשתמש להזין מונחי חיפוש מרובים בעת חיפוש כלבים
- המשתמש זקוק להוראות כדי "להזין את מונחי החיפוש כשהם מופרדים באמצעות פסיקים"
- הפרד מונחי חיפוש בודדים ממחרוזת הזנת המשתמש ואחסן כערכים במערך
- מיין את המונחים במערך בסדר מיון אלפאנומרי
זיהוי כלבים עם תיאורים עם התאמות עבור מונח חיפוש משתמש אחד או יותר
- בעת זיהוי כלב ב-
animalsArray, חפש התאמות עבור כל מונח שהמשתמש הזין - להתאמת מונח, צור פלט של הודעה עם שם הכלבים ואת המונח המתאים
- דוגמה:
Our dog Jake is a match for your search for sheppard!
- דוגמה:
- כאשר כל המונחים יחפשו את תיאור הכלב הנוכחי:
- עבור התאמה אחת או יותר, הפק פלט של הכינוי והתיאור עבור הכלב הנוכחי
- עבור התאמה אחת או יותר, עקוב אחר התאמה כדי שתדע שלא להציג את ההודעה "לא נמצאו התאמות עבור כל הכלבים הזמינים" (עיין בפריט הבא)
- לאחר שכל חיפושי הכלבים הושלמו ללא התאמות, הצג את ההודעה "לא נמצאו התאמות עבור כל הכלבים הזמינים"
אכיפת כללי האימות הבאים
- ערכים אינם יכולים להיות Null
- לערכים לא יכולים להיות אפס תווים
- כל הגבלה נוספת היא עד למפתח
הערות קוד
- הערות קוד ממוספר בקוד ההתחלה מציעות הצעות
- ההערות מופיעות בסדר רציף ורק ההערות המתחילות ב- #1, #2 ו- #3 חלות על תרגיל זה של האתגר
פלט לדוגמה
סקור את התמונה המונפשת הבאה
שים לב לצג הזמני של "
searching..." ואחריו המונח הנוכחי (דוגמה: "searching...retriever")שים לב בסדר שבו המונחים מופיעים בחיפוש הוא כעת אלפאנומרי
שים לב שההודעות עבור התאמות נמשכות (לדוגמה: "
Our dog lola is a chase match!")
עיין בפלט לדוגמה בסעיף הבא, "כיצד לבדוק את עבודתך", כדי להבהיר עוד יותר כיצד ליישם תכונות
כיצד לבדוק את העבודה שלך
כדי לאמת שהקוד שלך עונה על הדרישות שצוינו, בצע את השלבים הבאים:
- השתמש בקוד Visual Studio כדי לבנות ולהפעיל את האפליקציה שלך.
הערה
באפשרותך לצאת ממבחן האימות לפני השלמת כל שלבי האימות אם אתה רואה תוצאה שאינה ממלאת את דרישות המפרט. כדי לכפות יציאה מהתוכנית הפועלת, בלוח המסוף, הקש Ctrl-C. לאחר היציאה מהאפליקציה הפועלת, השלם את פעולות העריכה שאתה סבור שיפעלו כדי לטפל בבעיה שבה אתה עובד, שמור את העדכונים בקובץ ה- Program.cs ולאחר מכן בנה מחדש והפעל את הקוד.
שורת הפקודה של המסוף אמורה להופיע כנקודת ההתחלה עבור התוכנית
בשורת הפקודה, הזן תפריט 2 :
Welcome to the Contoso PetFriends app. Your main menu options are: 1. List all of our current pet information 2. Display all dogs with a specified characteristic Enter your selection number (or type Exit to exit the program) 2 Enter dog characteristics to search for separated by commasבשורת הפקודה, הזן גדול , קרם, זהוב כדי לבדוק כאשר יותר ממונח חיפוש אחד תואם לתיאורי הכלב. ודא שללוח המסוף יש הודעה הדומה לדוגמת פלט הקוד:
Enter dog characteristics to search for separated by commas large, cream, golden Our dog Nickname: lola matches your search for cream Our dog Nickname: lola matches your search for golden Nickname: lola (ID #: d1) Physical description: medium sized cream colored female golden retriever weighing about 45 pounds. housebroken. Personality: loves to have her belly rubbed and likes to chase her tail. gives lots of kisses. Our dog Nickname: gus matches your search for golden Our dog Nickname: gus matches your search for large Nickname: gus (ID #: d2) Physical description: large reddish-brown male golden retriever weighing about 85 pounds. housebroken. Personality: loves to have his ears rubbed when he greets you at the door, or at any time! loves to lean-in and give doggy hugs. Press the Enter key to continueבשורת הפקודה, הקש על מקש Enter כדי להמשיך לתפריט הראשי
בשורת הפקודה, הזן תפריט 2 :
Welcome to the Contoso PetFriends app. Your main menu options are: 1. List all of our current pet information 2. Display all dogs with a specified characteristic Enter your selection number (or type Exit to exit the program) 2 Enter dog characteristics to search for separated by commasבשורת הפקודה, הזן פסים גדולים, אפורים, לבדיקה כאשר אף אחד מונחי החיפוש אינו תואם לתיאורי כלבים. ודא שלוח המסוף מעדכן בהודעה בדומה לדוגמות פלט הקוד:
Enter dog characteristics to search for separated by commas big, grey, stripes None of our dogs are a match for: big, grey, stripes Press the Enter key to continueאם שציינת הגבלות נוספות עבור ערכים חוקיים, הפעל את מקרי הבדיקה המתאימים כדי לאמת את עבודתך.
הערה
אם הקוד שלך עומד בדרישות, אתה אמור להיות מסוגל להשלים כל שלב לפי הסדר ולראות את התוצאות הצפויות במעבר בדיקה יחיד. אם הוספת הגבלות נוספות, ייתכן שתצטרך לצאת מהאפליקציה ולאחר מכן להפעיל אישור בדיקה נפרד כדי להשלים את האימות.
מזל טוב אם הצלחת בתרגיל אתגר זה!