- A NetworkHelper egy .NET Framework és C# projektekhez készült könyvtár, amely megkönnyíti a backend kommunikációt. A könyvtár egyszerűsíti az HTTP kérések küldését és a JSON válaszok feldolgozását.
- Verzió: v0.1.3
- Támogatott .NET Verziók: .NET Framework 4.7.2 vagy újabb
Könyvtár (DLL) letöltése:
- Töltsd le a legújabb
NetworkHelper.dllfájlt a GitHub Releases oldalról.
- Töltsd le a legújabb
DLL hozzáadása a projektedhez:
- Nyisd meg a Visual Studio-t és navigálj a Solution Explorer ablakhoz.
- Jobb klikk a References elemre, válaszd az Add Reference lehetőséget.
- A megjelenő ablakban kattints a Browse... gombra, és tallózd be a letöltött DLL fájlt.
- Ellenőrizd, hogy a DLL megjelent a References alatt.
A Backend statikus osztály segítségével könnyedén létrehozhatsz és küldhetsz HTTP kéréseket.
| Metódus | Leírás | Példa Használat |
|---|---|---|
GET | Adatok lekérése | Backend.GET(url).Send() |
POST | Új adatok létrehozása | Backend.POST(url).Body(body).Send() |
PUT | Adatok módosítása | Backend.PUT(url).Body(body).Send() |
DELETE | Adatok törlése | Backend.DELETE(url).Send() |
stringurl="http://localhost:3000/students";Responseresponse=Backend.GET(url).Send();Body felhasználása opcionális. Amennyiben nem szeretnél a body-ban adatot utaztatni, nem kötelező meghívni.
stringurl="http://localhost:3000/students";Studentstudent=newStudent{phone="12132",name="Sanyi",email="email"};Responseresponse=Backend.POST(url).Body(student).Send();Body-val történő Azonosítás
A body felhasználása opcionális: ha nincs szükséged adatok küldésére, a body-t kihagyhatod.
stringurl="http://localhost:3000/students";Studentstudent=newStudent{id=11,name="Bela"};Responseresponse=Backend.PUT(url).Body(student).Send();Anonim típussal (new { id = 11, name = "Bela" }) is dolgozhatunk adatküldéskor. A lényeg, hogy tartalmazza a szükséges tulajdonságokat (pl id, name):
Backend.PUT(url).Body(new { id = 11, name = "Bela"}).Send();
URL Paraméteres Azonosítás
A body felhasználása opcionális: ha nincs szükséged adatok küldésére, a body-t kihagyhatod.
stringurl="http://localhost:3000/students/11";Studentstudent=newStudent{name="Bela"};Responseresponse=Backend.PUT(url).Body(student).Send();Body-val történő Azonosítás
A body felhasználása opcionális: ha nincs szükséged adatok küldésére, a body-t kihagyhatod.
stringurl="http://localhost:3000/students";Responseresponse=Backend.DELETE(url).Body(newStudent{id=11}).Send();Anonim típussal (new { id = 11 }) is dolgozhatunk, azonosítás céljából. A lényeg, hogy tartalmazza a szükséges tulajdonságot (pl id):
Backend.DELETE(url).Body(new { id = 11 }).Send();
URL Paraméteres Azonosítás
Az azonosítót az URL tartalmazza, nem szükséges a body láncolat.
stringurl="http://localhost:3000/students/11";Responseresponse=Backend.DELETE(url).Send();Deszerializálja a kiválasztott JSON adatot a megadott típusra.
Server response:
[
{
"id": 1,
"nev": "Kiss Péter",
"osztaly": "9.A",
"szuletesi_datum": "2007-05-12"
},
{
"id": 2,
"nev": "Nagy Anna",
"osztaly": "10.B",
"szuletesi_datum": "2006-08-23"
}
]As<T> Metódus:
List<Student>students=Backend.GET(url).Send().As<List<Student>>();Ezen metódusok segítik a komplex responseból való részleges adatfeldolgozást.
Komplex server response:
{
"message": "Dolgozó sikeresen lekérve.",
"status": "success",
"data": {
"Az": 1,
"Nev": "Nagy József",
"Telepules": "Szolnok"
}
}ValueAt + As<T> Metódus: A ValueAt kiválaszt egy JSON értéket az adott index alapján.
Responseresponse=Backend.GET(url).Send();stringuzenet=response.ValueAt(0).As<string>();stringstatus=response.ValueAt(1).As<string>();Dolgozodolgozo=response.ValueAt(2).As<Dolgozo>();ValueOf + As<T> Metódus: A ValueOf kiválaszt egy JSON értéket a megadott név alapján.
Responseresponse=Backend.GET(url).Send();stringuzenet=response.ValueOf("message").As<string>();stringstatus=response.ValueOf("status").As<string>();Dolgozodolgozo=response.ValueOf("data").As<Dolgozo>();Ezen metódusok egymásba ágyazása segíti a komplex responseból a mélyebb szintű részleges adatfeldolgozást. Akár kombinálhatjuk is őket (ValueAt-ra ValueOf vagy fordítva). Ezáltal csökkenteni tudjuk a deszerializálandó adatmennyiséget, így erőforrást szabadíthatunk fel projektünkben.
Komplex server response:
{
"message": "Dolgozó sikeresen lekérve.",
"status": "success",
"data": {
"Az": 1,
"Nev": "Nagy József",
"Telepules": "Szolnok"
}
}A Nev érték kinyerése a ValueAt-al
stringnev=Backend.GET(link).Send().ValueAt(2).ValueAt(1).As<string>();A Nev érték kinyerése a ValueOf-al
stringnev=Backend.GET(link).Send().ValueOf("data").ValueOf("Nev").As<string>();A Nev érték kinyerése a ValueAt és ValueOf-al
stringnev=Backend.GET(link).Send().ValueAt(2).ValueOf("Nev").As<string>();Backend.UPLOAD(url).File(filePath).Send();Szerver válasz formátuma: sikeres feltöltéskor visszatér a fájl nevével, a data tulajdonságba helyezve.
{
"message": "Fájl sikeresen feltöltve.",
"status": "success",
"data": "3126503.png"
}Fájl feltöltése, válasz megjelenítése
Fájl útvonálának kiválasztásához érdemes a OpenFileDialog-ot használni WPF esetében. A kódrészletben kiválasztom a képet, és útvonalát eltárolom a filePath változóban.
OpenFileDialogopenFileDialog=newOpenFileDialog{Filter="Image Files (*.png;*.jpg;*.jpeg)|*.png;*.jpg;*.jpeg|All Files (*.*)|*.*"};if(openFileDialog.ShowDialog()==true){stringfilePath=openFileDialog.FileName;stringurl="http://localhost:3000/upload";Responseresponse=Backend.UPLOAD(url).File(filePath).Send();// megjelenítem a válaszüzenetetMessageBox.Show(response.ValueOf("message").As<string>());}A teljes forráskód elérhető itt: Backend.cs

Ez a dokumentáció biztosítja, hogy a NetworkHelper könyvtár használata egyszerű és érthető legyen. Ha bármilyen kérdésed van, vagy további segítségre van szükséged, ne habozz kapcsolatba lépni velem a GitHub Issues oldalon.