Let me rephrase.. They are not using .NET 3.0 API. We would have used WCF
ourselves, but this is not the kind of decision we can force them to take...
especially when this documentation contract is meant to put a foot in the
door for a much larger one ;)

Sébastien

On 5/16/07, Phil Sayers <[EMAIL PROTECTED]> wrote:

i think 3.0 is the same as 2.0 but with extras, workflow, wpf and a couple
of others i forget the technology names.
but if your're at 2.0, you're already at 3.0.

:-D



-----Original Message-----
From: Discussion of advanced .NET topics.
[mailto:[EMAIL PROTECTED] Behalf Of SÃ(c)bastien
Lorion
Sent: Wednesday, May 16, 2007 5:45 AM
To: ADVANCED-DOTNET@DISCUSS.DEVELOP.COM
Subject: Re: [ADVANCED-DOTNET] OT: Versionning of web services


Thanks for the tip... I will see if I cannot prepare in some way the
eventual transition to .NET 3.0. For the time being, the client will stick
to .NET 2.0 thought.

Sebastien

On 5/15/07, Potter, Mark S. <[EMAIL PROTECTED]> wrote:
>
> The WCF (windows communication foundation) in VS Studio "orcas" (.Net
3.5)
> has a new versioning concept for web services, breaking it into a
service
> contract and a data contract. They also have a new interface called
> IDataExtender to handle data structure changes.  You may want to take a
look
> at that.
>
> -----Original Message-----
> From: Discussion of advanced .NET topics. [mailto:
> [EMAIL PROTECTED] On Behalf Of SÃ(c)bastien Lorion
> Sent: Tuesday, May 15, 2007 5:20 PM
> To: ADVANCED-DOTNET@DISCUSS.DEVELOP.COM
> Subject: [ADVANCED-DOTNET] OT: Versionning of web services
>
> Kinda off-topic, but I would like to have some input on versionning
issues
> with web services. Below is what I propose ... I would be happy to have
> your
> comments on that. I know .. sounds like reinventing the wheel, but it
> never
> hurt to re/validate our practices.
>
>
> Target namespace of the web service follows the template
> http://webservices.mySystem.myCompany.com/version/ where version is 1.0,
> 1.1,
> 2.0, etc. That means there is only one web service project per system,
> which
> in turn contains many services (.asmx) with many methods.
>
> Each version is a different and independant project. It may happen that
> 99%
> of the new project is a copy of the previous version, but in that case,
I
> would seriously question the need of a new version.
>
> Each method takes a single parameter which is a structure and also
return
> a
> structure, even if the structure has only one field. This is to allow
> adding
> parameters or results without breaking compatibility and/or having to
> create
> a new method. In the case of a new parameter, the method has to handle
the
> case where clients will not pass any value for that parameter.
>
> The target namespace of those structures will be in the form
> http://webservices.mySystem.myCompany.com/version/method/
>
> For example:
>
> [Serializable]
> [XmlType([Namespace]:="
> http://webservices.humanResources.myCompany.com/1.0/searchEmployees/";)]
> public struct SearchEmployeesRequest
> {
>   public string FirstName;
>   public string LastName;
>   public DateTime? HiringDate;
> }
>
> [Serializable]
> [XmlType([Namespace]:="
> http://webservices.humanResources.myCompany.com/1.0/searchEmployees/<
> http://webservices.humanresources.mycompany.com/1.0/searchEmployees/>
> ")]
> public struct SearchEmployeesResponse
> {
>   public EmployeeCollection Employees;
>   public bool TooManyResults;
> }
>
> In cases where one or more recordsets are returned, a separate method
must
> be provided to get only the schema.
>
> public enum SearchEmployeesSchema
> {
>   Employees
>   // ... could add more over time
> }
>
> [WebMethod]
> public XmlSchema GetSchemaSearchEmployees(SearchEmployeesSchema schema)
> {
>   // ...
> }
>
> Thanks !
>
> --
> SÃ(c)bastien
> www.sebastienlorion.com
>
> ===================================
> This list is hosted by DevelopMentor(r)  http://www.develop.com
>
> View archives and manage your subscription(s) at
> http://discuss.develop.com
>



--
SÃ(c)bastien
www.sebastienlorion.com

===================================
This list is hosted by DevelopMentor(r)  http://www.develop.com

View archives and manage your subscription(s) at
http://discuss.develop.com




--
Sébastien
www.sebastienlorion.com

Reply via email to