Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Nowadays comunication between applications is an active topic with daily usage and a large amount of pratical appliances. While developing an app in witch I had to consume an OData I found out that combining Linq with my code made this operation pretty easy.
The algorithm to consume OData starts with adding a service reference to Visual Studio:
http://rpmachado.files.wordpress.com/2012/08/image_thumb1.png?w=587&h=393
After adding the service reference in which you define the uri to the service, we start building our code.
In your code the algorithm is the following:
- Define the Uri to your OData Service
- Define the context of your odata, which contains all entities exposed by the service.
- Query the context using Linq
- Print the result
Easy and simple.
Example code
public static void Main(string[] args){
Uri serviceUri= new Uri("http://example.host.odataservice.net/service.svc", UriKind.Absolute);
ODataService.ServiceEntities context = new ODataService.ServiceEntities (serviceUri);
context.Credentials = new System.Net.NetworkCredential(Username,Password);
var query = from ServiceObject in context.YourEntity
select ServiceObject ;
foreach (var myObject in query)
{
Console.WriteLine("\n Field1: {0} | Field2: {1}",
myObject .Field1, myObject .Field2);
}
}
That’s it.
Thank you,
Rui Machado
rpmachado.wordpress.com