Haluan kokeilla eroa ServiceStack Webin ja Microsoftin sisäänrakennetun webapin välillä ja nähdä, mitä etuja siinä on, joten yritä rakentaa ServiceStack Web Service -sovellus jo tänään
1: Luo uusi .NET 4.5 web-tyhjä projekti ja käytä nuget-komentoa asentaaksesi ServiceStackin:
.net-version on oltava suurempi tai yhtä suuri kuin versio 4.5, 4.0-projektia ei asenneta onnistuneesti! Kuten alla olevassa kuvassa näkyy.
2: Luo uusi malli- ja palvelukansio
Luo pyyntö- ja vastausentiteetti seuraavalla koodilla:
3: Luo palvelurajapinta palvelukansioon
4: Luodaan tälle projektille uusi globaali sovellusluokka nimeltä Global.asax, ja koodi on seuraava:
5: Muokkaa web.config-asetusta, lisää uusi system.webServer-solmu, ja täydellinen kokoonpano on seuraava:
Palvelumme on tähän mennessä suoritettu, ohjelman ajaminen näkee rajapinnan seuraavasti,GetAllUserInfoRequest ja GetByAgeUserInfoRequest voidaan ymmärtää todellisina kutsumenetelminäSiinä määritellyt parametrit voidaan tulkita metodin pyyntöparametreiksi, kuten alla olevassa kuvassa on esitetty:
ServiceStackin palvelumenetelmät ovat nimeltään Any, Get ja Post, jotka ovat myös ServiceStackin tukemia pyyntötyyppejä.Kaikki keinot, joilla palvelua voidaan kutsua sekä HTTP Get että HTTP Post -muodossa。 Tämä vahvistaa ja yksinkertaistaa RESTFull-tyylisten WebServicesien toteutusta. Lisää vain rakkaus [Route(...)] näihin menetelmiin Ominaisuudet. ServiceStackissa,Metodien ja metodien ero erotetaan palvelun ja pyyntöobjektin Request DTO parametrien perusteella, sen sijaan, että erotellaan metodin nimen mukaan kuten WCF:ssä. Tämä tarkoittaaPyyntö-DTO-objektia ei voi käyttää uudelleen useiden ServiceStack-palveluiden välillä。
Format-parametrin lisääminen get request -parametrin jälkeen voi palauttaa vastauksen tyypin, kuten: format=json, format=xml jne., ja näyttää siltä, että jsonp-muoto on myös tuettu.
Esimerkiksi: http://localhost:52079//json/reply/GetAllUserInfoRequest?format=xml
Yhteenvetona: verrattuna Microsoftin web-API:iin, ServiceStackilla ei näytä olevan metodin käsitystä verkossa, se on eri pyyntöyksikkö metodina, se voi automaattisesti luoda rajapintadokumentteja, ja vastauksen muoto voidaan palauttaa muodon kautta (vaikka Microsoftin versio on myös mahdollinen, mutta se tuntuu yksinkertaisemmalta kuin Microsoftin).
Lähde: https://www.cnblogs.com/woxpp/p/5012947.html
https://msdn.microsoft.com/zh-cn/magazine/dn342871.aspx
https://github.com/ServiceStack/ServiceStack/wiki
Lopuksi liitä projektin lähdekoodi!
Turistit, jos haluatte nähdä tämän postauksen piilotetun sisällön, olkaa hyvä Vastaus
|