Adăugarea suportului pentru mai multe termeni de căutare
Aplicația Contoso Animale de casă vă ajută să găsiți case noi pentru animalele de companie abandonate. Echipa dorește ca caracteristica de căutare să fie îmbunătățită pentru a le permite utilizatorilor să introducă mai mulți termeni atunci când caută câini de adoptat.
Specificație de căutare
În acest prim exercițiu de provocare, trebuie să actualizați caracteristica de căutare unică a termenilor pentru a le permite utilizatorilor să introducă mai mulți termeni de căutare separați prin virgulă.
Adunați mai mulți termeni de căutare de la utilizator
- Permiteți utilizatorului să introducă mai mulți termeni de căutare atunci când caută câini
- Utilizatorul are nevoie de instrucțiuni pentru a "introduce termenii de căutare separați prin virgulă"
- Separați termenii individuali de căutare de șirul de intrare al utilizatorului și stocați ca valori într-o matrice
- Sortarea termenilor din matrice în ordinea de sortare alfanumerică
Identificarea câinilor cu descrieri cu potriviri pentru unul sau mai multe, termen de căutare utilizator
- Pe măsură ce identificați un câine în
animalsArray, căutați potriviri pentru fiecare termen introdus de utilizator - Pentru o potrivire de termeni, afișați un mesaj cu numele câinilor și termenul potrivit
- exemplu:
Our dog Jake is a match for your search for sheppard!
- exemplu:
- Când toate căutările de termeni se termină pentru descrierea curentă a câinelui:
- Pentru una sau mai multe potriviri, se afișează supranumele și descrierea pentru câinele curent
- Pentru una sau mai multe potriviri, urmăriți că a existat o potrivire, astfel încât să nu știți să afișați un mesaj "nicio potrivire găsită pentru câini disponibili" (consultați elementul următor)
- După ce toate căutările câinilor s-au terminat fără potriviri, se afișează un mesaj "Nicio potrivire găsită pentru câini disponibili"
Impuneți următoarele reguli de validare
- valorile nu pot fi nule
- valori nu pot avea caractere zero
- orice restricție suplimentară este până la dezvoltator
Comentarii cod
- Comentariile cu cod numerotat din codul starter oferă sugestii
- Comentariile sunt într-o ordine secvențială și numai comentariile începând cu #1, #2 și #3 se aplică acestui exercițiu al provocării
Eșantion de ieșire
Revizuiți următoarea imagine animată
Observați afișarea temporară a "
searching..." urmat de termenul curent (exemplu: "searching...retriever")Observați că ordinea în care apar termenii în căutare este acum alfanumerică
Observați că mesajele pentru potriviri persistă (de exemplu: "
Our dog lola is a chase match!")
Examinați rezultatul eșantionului din secțiunea următoare, "Cum să verificați lucrul", pentru a clarifica mai multe modalități de implementare a caracteristicilor
Cum să vă verificați lucrul
Pentru a valida faptul că codul dvs. îndeplinește cerințele specificate, parcurgeți pașii următori:
- Utilizați Visual Studio Code pentru a construi și a rula aplicația.
Notă
Puteți ieși din testul de verificare înainte de a finaliza toți pașii de verificare dacă vedeți un rezultat care nu îndeplinește cerințele de specificație. Pentru a impune ieșirea din programul care rulează, în panoul Terminal, apăsați Ctrl-C. După ce ieșiți din aplicația care rulează, finalizați editările pe care credeți că le veți rezolva problema la care lucrați, salvați actualizările la fișierul Program.cs, apoi creați din nou și rulați codul.
Linia de comandă terminal ar trebui să se afișeze ca punct de plecare pentru program
În linia de comandă, introduceți 2 meniu:
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În linia de comandă, introduceți mare, cremă, de aur pentru a testa atunci când mai multe termeni de căutare se potrivește cu descrierile câinilor. Verificați dacă panoul Terminal se actualizează cu un mesaj similar cu eșantionul de ieșire a codului:
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În linia de comandă, apăsați tasta Enter pentru a continua la meniul principal
În linia de comandă, introduceți 2 meniu:
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În linia de comandă, introduceți big, gri, dungi pentru a testa atunci când niciunul dintre termenii de căutare nu se potrivește cu descrierile câinilor. Verificați dacă panoul Terminal se actualizează cu un mesaj similar cu mostrele de ieșire de cod:
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 continueDacă ați specificat restricții suplimentare pentru intrările valide, rulați cazurile de testare corespunzătoare pentru a vă verifica munca.
Notă
Dacă codul îndeplinește cerințele, ar trebui să puteți finaliza fiecare pas în ordine și să vedeți rezultatele așteptate într-un singur test. Dacă ați adăugat restricții suplimentare, poate fi necesar să ieșiți din aplicație, apoi să rulați un permis de test separat pentru a finaliza verificarea.
Felicitări dacă ați reușit în acest exercițiu de provocare!