Rad bi preizkusil razliko med ServiceStack Web in Microsoftovim vgrajenim webapijem ter videl, kakšne prednosti imajo, zato poskusite danes zgraditi aplikacijo ServiceStack Web Service
1: Ustvarite nov .NET 4.5 prazen spletni projekt in nato uporabite ukaz nuget za namestitev ServiceStack:
.NET različica mora biti večja ali enaka različici 4.5, projekt 4.0 ne bo uspešno nameščen! Kot je prikazano na spodnji sliki.
2: Ustvarite nov model in mapo storitev
Ustvarite entiteto za zahtevo in odgovor z naslednjo kodo:
3: Ustvarite vmesnik storitve v mapi storitev
4: Ustvarite nov globalni razred aplikacije z imenom Global.asax za ta projekt, koda pa je naslednja:
5: Spremenite konfiguracijo web.config, dodate novo vozlišče system.webServer in popolna konfiguracija je naslednja:
Do zdaj je bila naša storitev zaključena, program pa lahko vmesnik vidi takole,GetAllUserInfoRequest in GetByAgeUserInfoRequest lahko razumemo kot dejanske metode klicaParametre, definirane v njej, lahko interpretiramo kot parametre zahtev metode, kot je prikazano na spodnji sliki:
Metode storitev v ServiceStacku se imenujejo Any, Get in Post, ki so prav tako podprte vrste zahtev s strani ServiceStack.Vsak način omogoča, da storitev pokličemo tako v HTTP Get kot HTTP Post。 To krepi in poenostavlja implementacijo spletnih storitev v slogu RESTFull. Preprosto dodajte ljubezen [Route(...)] na te metode Lastnosti. V ServiceStacku,Razlika med metodami in metodami se razlikuje po parametrih storitve in objekta zahteve Request DTO, namesto da bi razlikovali po imenu metode, kot v WCF. To pomeniObjekta DTO zahteve ni mogoče ponovno uporabiti med več storitvami v ServiceStacku。
Dodajanje parametra formata za parameter get request lahko vrne vrsto odgovora, kot so: format=json, format=xml itd., in zdi se, da je podprt tudi format jsonp.
Na primer: http://localhost:52079//json/reply/GetAllUserInfoRequest?format=xml
Za povzetek, v primerjavi z Microsoftovim spletnim API-jem se zdi, da ServiceStack nima pojma o metodi na spletu, gre za drugačno entiteto zahteve, metodo, ki lahko samodejno generira vmesne dokumente, format odgovora pa se lahko vrne skozi format (čeprav je Microsoftov tudi mogoč, a se zdi preprostejši od Microsoftovega)
Vir: https://www.cnblogs.com/woxpp/p/5012947.html
https://msdn.microsoft.com/zh-cn/magazine/dn342871.aspx
https://github.com/ServiceStack/ServiceStack/wiki
Na koncu priložite izvorno kodo projekta!
Turisti, če želite videti skrito vsebino te objave, prosim Odgovoriti
|