Soovin proovida erinevust ServiceStack Webi ja Microsofti sisseehitatud webapi vahel ning näha, millised eelised neil on, nii et proovi juba täna ehitada ServiceStack Web Service rakendus
1: Loo uus .NET 4.5 veebitühi projekt ja seejärel kasuta nuget käsku ServiceStacki paigaldamiseks:
.net versioon peab olema suurem või võrdne versiooniga 4.5, 4.0 projekti ei paigaldata edukalt! Nagu alloleval joonisel näidatud.
2: Loo uus mudel ja teenuse kaust
Loo päringu ja vastuse üksus järgmise koodiga:
3: Loo teenuseliides teenuse kaustas
4: Loo sellele projektile uus globaalne rakendusklass nimega Global.asax, ja kood on järgmine:
5: Muuda web.config konfiguratsiooni, lisa uus system.webServer sõlm ja täielik konfiguratsioon on järgmine:
Senini on meie teenus lõpetatud, programmi käivitamine näeb liidest järgmiselt,GetAllUserInfoRequest ja GetByAgeUserInfoRequest on mõistetavad kui tegelikke kõnemeetodeidSelles määratletud parameetreid saab tõlgendada meetodi päringuparameetritena, nagu alloleval joonisel näidatud:
ServiceStacki teenusemeetodid kannavad nimesid Any, Get ja Post, mis on samuti ServiceStacki poolt toetatud päringutüübid.See tähendab, et teenust saab kutsuda nii HTTP Get kui HTTP Postis。 See tugevdab ja lihtsustab RESTFull-stiilis veebiteenuste rakendamist. Lisa lihtsalt armastus [Route(...)] nendele meetoditele Omadused. ServiceStackis,Meetodite ja meetodite erinevust eristavad teenuse ja päringuobjekti Request DTO parameetrid, mitte meetodi nime järgi nagu WCF-is. See tähendab, etPäringu DTO objekti ei saa taaskasutada mitme teenuse vahel ServiceStackis。
Format-parameetri lisamine pärast get request parameetrit võib tagastada vastuse tüübi, näiteks: format=json, format=xml jne, ning tundub, et jsonp formaat on samuti toetatud.
Näiteks: http://localhost:52079//json/reply/GetAllUserInfoRequest?format=xml
Kokkuvõtteks, võrreldes Microsofti veebipõhise API-ga ei tundu ServiceStackil olevat veebis meetodite mõistet, see on erinev päringuüksus meetodist, see suudab automaatselt luua liidese dokumente ning vastuse formaat saab tagastada vormingu kaudu (kuigi Microsofti oma on samuti võimalik, kuid tundub lihtsam kui Microsoft).
Viide: https://www.cnblogs.com/woxpp/p/5012947.html
https://msdn.microsoft.com/zh-cn/magazine/dn342871.aspx
https://github.com/ServiceStack/ServiceStack/wiki
Lõpuks lisa projekti lähtekood!
Turistid, kui soovite näha selle postituse peidetud sisu, palun Vastuse
|