RE: Windows Client using Generated WS Proxy
From: Tomas (Tomas_at_discussions.microsoft.com)
Date: 09/15/04
- Next message: Old Man: "xml payload to webservice"
- Previous message: Tomas: "Re: Calling a webmethod by a post"
- In reply to: Gravy: "Windows Client using Generated WS Proxy"
- Next in thread: Gravy: "Re: Windows Client using Generated WS Proxy"
- Reply: Gravy: "Re: Windows Client using Generated WS Proxy"
- Messages sorted by: [ date ] [ thread ]
Date: Wed, 15 Sep 2004 06:11:05 -0700
Hi Gravy,
I have just completed a contract where I ran into the situation I just
described.
I was using several class that were to be shared across the presentation and
business tiers of my application. I have placed these data class e.g.
AddressData, UserData in an assembly I was planning to share across tiers.
The WSDL tool did indeed create "duplicates" of these classes which, to be
honest, really annoyed me.
The solution I used was to generate one proxy using the tool and then I
simply went through it and modified it. Since I am using VSS, versioning has
not been a real problem. Since the initial design of these data classes I've
added some methods for presentation e.g. a toString() that puts the users
name together in a nice format.
Overall it's been quite successful, but that partly stems from the fact that
we had very good designs on our webservices before we started client side
development. Signatures have changed slightly, but you can modify the custom
proxy without too much difficulty. Major headaches arise when you add new
webmethods, fortunately for me, that happened only one over the life of the
project so it was only a minor task. This would be a big problem if methods
were being added quite frequently.
I hope this has been of some benefit to you. Let me know what you decided to
do.
Tom
"Gravy" wrote:
> Hi,
>
> How many people are using a windows client to talk to their web service? I'm
> interested on peoples view on using the classes that are generated
> automatically when a web reference is added. More specifically the class
> that represent the data that goes to and from the web service.
>
> In a very simple solution I can see the ease of using the generated classes
> but in a more complex solution does the case for using them still stand.
>
> I have an application that has a windows client talking to a set of services
> hosted in ASP.NET. Now whilst writing the service layer I created quite a
> few classes that represent the data to method calls, i.e. entity type
> classes. the typical sort of thing is a Customer or an Account.
>
> Now, if I expose a web method that takes a Customer or Account the client
> proxy that is generated automatically creates another definition for
> Customer and Account. If MY entities contain the data plus a little
> validation, i.e. Name cannot be empty or greater than 10 then I would want
> my client to use them as well as the server. But this means I now have a
> conflict. the WS Proxy thinks it knows what a Customer is and the client
> code also thinks it knows what a Customer is.
>
> Does anyone else suffer from these conflicts, or do people just use the
> proxy generated class.
>
> I can think of a couple of solutions to the problem.
>
> 1) Change the reference.cs file to use my namespace for my Customer and
> Account class. Then remove the auto generated versions from this class.
>
> 2) Manually convert from my definition of a Customer to the proxy's
> definition before a call the web service!!
>
> One aspect of this that I'm worried about is versioning!!
>
> Does anyone have any comments on this?
>
> Regards
>
> Graham Allwood
>
>
>
- Next message: Old Man: "xml payload to webservice"
- Previous message: Tomas: "Re: Calling a webmethod by a post"
- In reply to: Gravy: "Windows Client using Generated WS Proxy"
- Next in thread: Gravy: "Re: Windows Client using Generated WS Proxy"
- Reply: Gravy: "Re: Windows Client using Generated WS Proxy"
- Messages sorted by: [ date ] [ thread ]
Relevant Pages
|