Trädvy Permalänk
Medlem
Plats
Hässleholm
Registrerad
Jan 2008

SOAP med C#

Jag vill testa SOAP i C#.

Några bra tips på tutorials eller anda tips?

Testade denna:

https://www.youtube.com/watch?v=uBwHedD5xx0

Känner dock att jag inte hänger med när projektet skapas.

Chassi: Fractal Design Define C || Processor: Intel i7-8700K || Grafikkort: ASUS GeForce GTX 1080Ti ROG Strix Gaming || Moderkort: Gigabyte Z370 AORUS ULTRA WIFI || Minne: Corsair Vengeance LPX DDR4 3000MHz 32 Gb || Lagring: Samsung 860 EVO 1TB SSD || PSU: Seasonic Focus+ 850W 85+ GOLD PSU || Acer Predator XB271HU || Windows 10

Trädvy Permalänk
Medlem
Registrerad
Jul 2013

Vilken version av visual studio kör du?
Är ju bara att skapa valfritt web project och lägga till en ASMX-fil så har du en webservice som använder SOAP.

Tycker du borde kolla på deras Web API istället.

Trädvy Permalänk
Medlem
Registrerad
Jul 2005

Vad innebär testa SOAP i detta fallet

Vill du bygga en soap-tjänst eller använda en soap-klient?
Om du vill bygga en soap-tjänst skulle jag rekommendera dig att kolla på REST stället då soap fasas ut allt mer.

There are 10 types of people in the world: Those who understand binary, and those who don't...

Asus Maximus VIII Hero | i7-6700K | ASUS GeForce GTX1070 Strix 8GB | G.Skill F4-2133C15Q-32GRK |

Trädvy Permalänk
Medlem
Plats
Hässleholm
Registrerad
Jan 2008

Jag har i uppdrag att göra lite presentation av SOAP och tänkte försöka göra ett exempel att visa i C#.

Vet ju vad det är men har inte jobbat med det.

Chassi: Fractal Design Define C || Processor: Intel i7-8700K || Grafikkort: ASUS GeForce GTX 1080Ti ROG Strix Gaming || Moderkort: Gigabyte Z370 AORUS ULTRA WIFI || Minne: Corsair Vengeance LPX DDR4 3000MHz 32 Gb || Lagring: Samsung 860 EVO 1TB SSD || PSU: Seasonic Focus+ 850W 85+ GOLD PSU || Acer Predator XB271HU || Windows 10

Trädvy Permalänk
Avstängd
Registrerad
Jul 2017

Om det specifikt är SOAP du ska presentera så är väl det bästa att själv skapa ett SOAP envelope, skicka det och sedan parsa resultatet du får tillbaka.

SOAP bygger ju på XML, välj ut en tjänst som finns på nätet, se hur det ska anropas, skicka rätt (XML) SOAP request till exempel med WebClient och parsa sedan (XML) resultatet du får tillbaka med XmlDocument för att få ut resultatet.

Eller är det specifikt hur det fungerar i .NET med alla inbyggda verktyg i VS som du ska presentera ? Det gömmer ju i så fall i princip allt om hur SOAP fungerar.

Trädvy Permalänk
Medlem
Plats
Hässleholm
Registrerad
Jan 2008
Skrivet av knge:

Om det specifikt är SOAP du ska presentera så är väl det bästa att själv skapa ett SOAP envelope, skicka det och sedan parsa resultatet du får tillbaka.

SOAP bygger ju på XML, välj ut en tjänst som finns på nätet, se hur det ska anropas, skicka rätt (XML) SOAP request till exempel med WebClient och parsa sedan (XML) resultatet du får tillbaka med XmlDocument för att få ut resultatet.

Eller är det specifikt hur det fungerar i .NET med alla inbyggda verktyg i VS som du ska presentera ? Det gömmer ju i så fall i princip allt om hur SOAP fungerar.

Ok, kan vara en bra idé! Tack!

Några tips på tjänster?

Chassi: Fractal Design Define C || Processor: Intel i7-8700K || Grafikkort: ASUS GeForce GTX 1080Ti ROG Strix Gaming || Moderkort: Gigabyte Z370 AORUS ULTRA WIFI || Minne: Corsair Vengeance LPX DDR4 3000MHz 32 Gb || Lagring: Samsung 860 EVO 1TB SSD || PSU: Seasonic Focus+ 850W 85+ GOLD PSU || Acer Predator XB271HU || Windows 10

Trädvy Permalänk
Avstängd
Registrerad
Jul 2017
Skrivet av Larsp777:

Ok, kan vara en bra idé! Tack!

Några tips på tjänster?

Inga roliga direkt men kanske GeoIP
http://www.webservicex.net/geoipservice.asmx?op=GetGeoIP

Kalkylator
http://www.dneonline.com/calculator.asmx?op=Add

Annars får du göra en egen.

Trädvy Permalänk
Medlem
Registrerad
Dec 2015

ASMX är apgammal teknik, använd inte det.

Använd mallen "WCF Service Application" i Visual Studio. Då får du ett OperationContract och ett DataContract genererat åt dig, som du sedan kan leka med och utöka.

Om du i stället vill testa även REST så kan du använda mallen "ASP .NET Web Application (.NET Framework)" med undermallen "Azure API App" (den behöver man inte drifta i Azure, och man slipper en massa onödig skit som finns i de andra mallarna).

Även i denna variant får du exempelkod. Det roliga med denna är att man kan lägga till en "WCF Service" i projektet. Då kan man skapa klasser som går att använda för att kommunicera med klienten med både SOAP (XML) och REST (JSON eller XML). Det är lite meck och man får göra lite dubbelimplementationer för operationerna, men det blir OK om man vill stödja båda typerna av klienter. Det är perfekt för demosyften om man vill visa skillnaderna mellan REST och SOAP (avlyssna trafiken med Fiddler).

Trädvy Permalänk
Medlem
Plats
Hässleholm
Registrerad
Jan 2008

Tittade på några kurser där skapar man en webservice.

När man testar projektet så kan man testa det:

Man får då en knapp "invoke".

Den SOAP som visas där är det den som generas eller exempel vad som skulle genereras?

D.v.s. använder man SOAP när man kör sin webservice?

Chassi: Fractal Design Define C || Processor: Intel i7-8700K || Grafikkort: ASUS GeForce GTX 1080Ti ROG Strix Gaming || Moderkort: Gigabyte Z370 AORUS ULTRA WIFI || Minne: Corsair Vengeance LPX DDR4 3000MHz 32 Gb || Lagring: Samsung 860 EVO 1TB SSD || PSU: Seasonic Focus+ 850W 85+ GOLD PSU || Acer Predator XB271HU || Windows 10

Trädvy Permalänk
Medlem
Plats
Östersund
Registrerad
Jan 2011

Som flera andra har nämnt så är SOAP dött/döende. Kolla på REST om du har möjlighet.

CPU: i7 4770k Noctua NH-D14 MOBO: Maximus VI Hero GPU: GTX 980 RAM: 16 GB 1600 MHz Chassi: R4 PSU: Corsair AX860 Hörlurar: SteelSeries 840 Mus: Logitech G500s V.v. citera mig för att få svar.

Trädvy Permalänk
Avstängd
Registrerad
Jul 2017
Skrivet av Larsp777:

Tittade på några kurser där skapar man en webservice.

När man testar projektet så kan man testa det:

Man får då en knapp "invoke".

Den SOAP som visas där är det den som generas eller exempel vad som skulle genereras?

D.v.s. använder man SOAP när man kör sin webservice?

Lite svårt att svara på utan en länk till den videon men gör du en asmx eller wcf service så används normalt SOAP i bakgrunden. Det går att konfigurera WCF till att använda JSON också.

Skrivet av swehunter2000:

Som flera andra har nämnt så är SOAP dött/döende. Kolla på REST om du har möjlighet.

Nu skulle han ju presentera SOAP tydligen. Används fortfarande väldigt mycket.

Trädvy Permalänk
Medlem
Plats
Falun
Registrerad
Dec 2003
Skrivet av knge:

Nu skulle han ju presentera SOAP tydligen. Används fortfarande väldigt mycket.

Men vi vet inte anledningen varför. Hans chef kan ha sagt "Vi behöver ett API till vår produkt och jag har hört talas om SOAP. Kan inte du sätta dig in i det och göra en presentation sen så utvecklar vi ett API sen?"

Då är det lämpligt att vi nu säger, titta på andra lösningar!

Som andra har sagt så rekommenderar jag REST, mer specifikt för C#-världen = ASP.NET Web API 2

Men självklart kan man sätta sig in i det om man måste göra det för att använda andras APIn som är gjorda med SOAP.
Riksbanken har en webservice för valutakurser som kör SOAP. Rätt mycket nyttig information kring maskineriet runtomkring också men några tutorials för SOAP har jag inte koll på.

http://www.riksbank.se/sv/Rantor-och-valutakurser/Web-Service...

ηλί, ηλί, λαμά σαβαχθανί!?