Ik ben bezig met het ontwikkelen van een applicatie waarin meerdere web services met elkaar moeten praten. Ook zou ik graag met behulp van overerving ervoor willen zorgen dat bepaalde door meerdere web services gedeelde functionaliteit in een parentklasse zitten. Als simpel voorbeeld:
Dit wordt gedeeld door elke web service in het systeem en ik laat andere web services erven van de klasse met deze methode erin. Ik heb nu een simpel programmaatje gemaakt en heb daarin een web reference naar deze basisklasse gemaakt. Als ik nu echter probeer deze methode aan te roepen op een webservice die van deze basisklasse erft krijg ik een SOAP exception met als bericht "Server did not recognize the value of HTTP Header".
Probeer ik nu iets van web services te vragen wat niet kan? Een andere optie zou zijn dat ik runtime proxy classes ga genereren en verder soortgelijk gedoe, maar dat wil ik als het enigszins kan toch even voorkomen
.
Voor de goede orde, ik heb al wel wat gezocht, maar die resultaten gaan meer over polymorfisme van objecten die je tussen web services heen en weer kaatst. En fouten daarbij in eerdere versies van .Net.
Update: als ik bovenstaande doe met meerdere van elkaar ervende web services binnen één assembly gaat het wel goed.
Update2: op msdn staat ook iets... dit voorbeeld ga ik even na het weekend uitproberen. Zou het abstract maken van de base class helpen ofzo
?
C#:
1
2
3
4
5
| [WebMethod] public bool isAvailable() { return true; } |
Dit wordt gedeeld door elke web service in het systeem en ik laat andere web services erven van de klasse met deze methode erin. Ik heb nu een simpel programmaatje gemaakt en heb daarin een web reference naar deze basisklasse gemaakt. Als ik nu echter probeer deze methode aan te roepen op een webservice die van deze basisklasse erft krijg ik een SOAP exception met als bericht "Server did not recognize the value of HTTP Header".
Probeer ik nu iets van web services te vragen wat niet kan? Een andere optie zou zijn dat ik runtime proxy classes ga genereren en verder soortgelijk gedoe, maar dat wil ik als het enigszins kan toch even voorkomen
Voor de goede orde, ik heb al wel wat gezocht, maar die resultaten gaan meer over polymorfisme van objecten die je tussen web services heen en weer kaatst. En fouten daarbij in eerdere versies van .Net.
Update: als ik bovenstaande doe met meerdere van elkaar ervende web services binnen één assembly gaat het wel goed.
Update2: op msdn staat ook iets... dit voorbeeld ga ik even na het weekend uitproberen. Zou het abstract maken van de base class helpen ofzo
[ Voor 11% gewijzigd door Bananenplant op 29-08-2008 17:37 ]
💶 Wil je in een vrije democratie blijven wonen? Betaal dan voor nieuws. 📰
❌ ceterum censeo contra factiones ad dextrum extremum esse pugnandum. 🙅🏻♂️