Visual Studio supports the generation of data service clients (Service references) for OData services. A data service client is a .NET class that contains methods for accessing the OData service and gets generated based on the metadata provided by the OData service. The client acts as a proxy and translates the method calls into HTTP requests.
Mike Wasson describes in his blog post Calling an OData Service From a .NET Client (C#) how to generate and use such a data service client.
When updating objects using the data service client the client by default sends a HTTP MERGE request after calling
If desired the default behaviour can be easily changed. To do PUT or PATCH requests instead of MERGE the
SaveChangesDefaultOptions have to be changed as shown below.
container.SaveChangesDefaultOptions = System.Data.Services.Client.SaveChangesOptions.ReplaceOnUpdate;
container.SaveChangesDefaultOptions = System.Data.Services.Client.SaveChangesOptions.PatchOnUpdate;