odata – super cola w3

Post on 27-Jan-2015

131 Views

Category:

Technology

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

 

TRANSCRIPT

OData – A Super Cola W3!Jorge Gonçalves & Manuel Costa

http://netponto.org34ª Reunião Lisboa - 08/12/2012

Jorge GonçalvesFormador responsável .NET na Rumos SAFundador da Consultora SimpleFactorAdministrador de Sistemas na DGITAAnalista Programador (Altitude Software, BES, BCP, ...)

Manuel CostaConsultor .NET na PT Sistemas de Informação S.A. na área do Portal Web de Vendas da PT. Co-fundador da Factor Digital Informática em 2000, onde desenvolveu sobre plataformas web para a Microsoft, a TMN, a Priberam, os Hotéis Dom Pedro, a Nestlé… Sempre em .NET

Agenda: OData – The Web “Glue”!• The What’s and Why’s

• CRUD: “REST in peace”

• Writing OData Services With .NET

• OData Clients

What is OData

• “The Open Data Protocol (OData) is a Web protocol for querying and updating data that provides a way to unlock your data and free it from silos that exist in applications today.”www.odata.org

• “OData does this by applying and building upon Web technologies such as HTTP, Atom Publishing Protocol (AtomPub) and JSON to provide access to information from a variety of applications, services, and stores.”

  www.odata.org

Why use the Open Data Protocol?

• “Provides a uniform way to expose, structure, query and manipulate data using REST practices and JSON or ATOM syntax to describe the payload. OData also provides a uniform way to represent metadata about the data, allowing computers to know more about the type system, relationships and structure of the data.” 

www.odata.org

www.odata.org

OData - REST “in Peace”

• URI Conventionshttp://services.odata.org/OData/OData.svc/$metadata

• System Query Optionshttp://services.odata.org/OData/OData.svc/Products?$skip=2&$top=2&$orderby=Rating&$filter=Price le 200 and Price gt 3.5&$select=Price,Name&$inlinecount=allpages&$format=json

http://services.odata.org/OData/OData.svc/GetProductsByRating?rating=5

URI Conventions usingIE 10 + ChromeLinkPadFiddler

demo

Writing OData Services using .NET• Web Application / Web Site– Add New Item -> WCF Data Service...

• Create Class derived from DataService– Reflection Provider– Entity Framework Provider

• Configure Entitity/Operation access• Add custom operations• Interceptors

Writing OData Service using .net- IQueryable- EF (Northwind DB)

demo

OData Clients: .Net

• Project -> Add Service Reference...

• Security / Authentication [1]

Consuming OData Service using .net

demo

OData Clients: Javascript• Javascript– JSON

• V3: Accept: application/json;odata=verbose

• DataJS• JayData• KendoUI

• XSS Issues (JSONP Support!)

Consumint OData Service using Javascript

demo

OData Clients: Excel

OData Clients: LightSwitch

Useful Tools

• Fiddlerhttp://www.fiddler2.com/fiddler2/

• Tcptracehttp://www.pocketsoap.com/tcptrace/

• LinqPadwww.linqpad.net

www.odata.org

Questões?

Referências• Open Data Protocol (What’s and Why’s)

– http://www.odata.org

• OData - REST “in Peace”– http://www.odata.org/documentation/uri-conventions– http://www.linqpad.net– http://www.fiddler2.com

• Writing/Consuming OData Services– MSDN “Open Data Protocol by Example”

• http://msdn.microsoft.com/en-us/library/ff478141.aspx

– CodeProject “OData Services”• http://www.codeproject.com/Articles/393623/OData-Services

– Authenticating with ADO.NET Data Services • http://mtaulty.com/CommunityServer/blogs/mike_taultys_blog/archive/2008/05/27/10447.aspx

Patrocinador “GOLD”

Twitter: @PTMicrosoft http://www.microsoft.com/portugal

Patrocinadores “Bronze”

Questões?

Próximas reuniões presenciais

• 08/12/2012 – Dezembro (Lisboa)• 26/01/2013 – Janeiro (Lisboa)

23/02/2013 – Fevereiro (Lisboa)16/03/2013 – Março (Lisboa)

Reserva estes dias na agenda! :)

Obrigado!jorge.goncalves@rumos.pt

manuelc@factordigital.com

top related