473,402 Members | 2,061 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,402 software developers and data experts.

Flatten WSDL

The WSDL reflects the full inheritance structure of my program, how can
I flatten the WSDL file?

e.g. if I have a class A with properties PA1 and PA2 and a class B
which in the C# code inherits from A and properties PB1 and PB2, then
the WSDL for a web service containing a method that returns be contains
complexType B with extension base A.
I want to suppress that to hide the inheritance structure of the
classes, also the client of the web service has absolutely no use for
this information as a complextType B containing the properties PA1,
PA2, PB1 and PB2 would be serialized exactly the same way.

Sep 15 '06 #1
4 2628
<jo*******@gmx.dewrote in message
news:11**********************@i3g2000cwc.googlegro ups.com...
The WSDL reflects the full inheritance structure of my program, how can
I flatten the WSDL file?

e.g. if I have a class A with properties PA1 and PA2 and a class B
which in the C# code inherits from A and properties PB1 and PB2, then
the WSDL for a web service containing a method that returns be contains
complexType B with extension base A.
I want to suppress that to hide the inheritance structure of the
classes, also the client of the web service has absolutely no use for
this information as a complextType B containing the properties PA1,
PA2, PB1 and PB2 would be serialized exactly the same way.
If you write the WSDL and its schemas by hand, you can get exactly what you
want.

John
Sep 16 '06 #2
jo*******@gmx.de a écrit :
e.g. if I have a class A with properties PA1 and PA2 and a class B
which in the C# code inherits from A and properties PB1 and PB2, then
the WSDL for a web service containing a method that returns be contains
complexType B with extension base A.
I want to suppress that to hide the inheritance structure of the
classes, also the client of the web service has absolutely no use for
this information as a complextType B containing the properties PA1,
PA2, PB1 and PB2 would be serialized exactly the same way.
Maybe you can customize the serialization process (see IXmlSerializable).

Mathieu
Sep 18 '06 #3
>
If you write the WSDL and its schemas by hand, you can get exactly what you
want.

John
Thanks for the reply. That brings me to the question: If I have my own
schema how do I include it/use it with my web service. Currently the
web.config just specifies which DLLs to include and the asmx files just
contain one line, e.g.
<%@ WebService Language="C#" CodeBehind="" Class="Runtime" %>

Where would I specify that I want to use my own WSDL file for a web
service?

Sep 21 '06 #4
<jo*******@gmx.dewrote in message
news:11**********************@k70g2000cwa.googlegr oups.com...
>
>>
If you write the WSDL and its schemas by hand, you can get exactly what
you
want.

John

Thanks for the reply. That brings me to the question: If I have my own
schema how do I include it/use it with my web service. Currently the
web.config just specifies which DLLs to include and the asmx files just
contain one line, e.g.
<%@ WebService Language="C#" CodeBehind="" Class="Runtime" %>

Where would I specify that I want to use my own WSDL file for a web
service?
You'll have to define what you mean by "use my own WSDL".

If you have your own WSDL and you send it to your customers, then that's
what they'll have to use. You then make sure that your web service conforms
the the WSDL, and it will be up to them to make sure that their client
conforms to the WSDL, and then everything will "just work".

;-)
You may mean to ask, "how do I get http://host/Runtime.asmx?WSDL" to return
my own WSDL, and the answer is that I don't know. I turn that feature off:

<configuration>
<system.web>
<webServices>
<protocols>
<remove name="Documentation" />
<remove name="HttpGet" />
<remove name="HttpPost" />
</protocols>
</webServices>
<system.web>
</configuration>

Good Luck,
John
Sep 21 '06 #5

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

23
by: Francis Avila | last post by:
Below is an implementation a 'flattening' recursive generator (take a nested iterator and remove all its nesting). Is this possibly general and useful enough to be included in itertools? (I know...
0
by: Francis Avila | last post by:
A few days ago (see the 'itertools.flatten()?' thread from October 28) I became obsessed with refactoring a recursive generator that yielded the leaves of nested iterables. When the dust settled,...
10
by: bearophile | last post by:
This is my first Python program (it's an improvement of a recursive version by Luther Blissett). Given a list like this: , ]]] It produces the "flatted" version: I think this operation is...
3
by: Bengt Richter | last post by:
What am I missing? (this is from 2.4b1, so probably it has been fixed?) def flatten(list): l = for elt in list: ^^^^--must be expecting list instance or other sequence t = type(elt) if t...
18
by: Ville Vainio | last post by:
For quick-and-dirty stuff, it's often convenient to flatten a sequence (which perl does, surprise surprise, by default): ]]] -> One such implementation is at ...
181
by: Tom Anderson | last post by:
Comrades, During our current discussion of the fate of functional constructs in python, someone brought up Guido's bull on the matter: http://www.artima.com/weblogs/viewpost.jsp?thread=98196 ...
32
by: Robin Becker | last post by:
Is there some smart/fast way to flatten a level one list using the latest iterator/generator idioms. The problem arises in coneverting lists of (x,y) coordinates into a single list of...
25
by: beginner | last post by:
Hi, I am wondering how do I 'flatten' a list or a tuple? For example, I'd like to transform or ] to . Another question is how do I pass a tuple or list of all the aurgements of a function to...
1
by: farooq.omar | last post by:
Is there a way to specify to Flatten() method as to how many points it should return. example I just want the Flatten() method to give back 100 points (basicallt gp.PointCount==100). Thanks
0
by: emmanuelkatto | last post by:
Hi All, I am Emmanuel katto from Uganda. I want to ask what challenges you've faced while migrating a website to cloud. Please let me know. Thanks! Emmanuel
1
by: nemocccc | last post by:
hello, everyone, I want to develop a software for my android phone for daily needs, any suggestions?
0
by: Hystou | last post by:
There are some requirements for setting up RAID: 1. The motherboard and BIOS support RAID configuration. 2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...
0
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
0
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...
0
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows...
0
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each...
0
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing,...
0
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.