What is different between OData and GData?
Does OData has more advantages in .NET technologies vs GData or not?
In my WCF project I want to create IQueryable models and REST platform for client,I used to OData before but I'm excited to know more about GData and it's features.
GData is obsolate and doesn't have such a wide support as OData - "Warning: Most newer Google APIs are not Google Data APIs." - Google Data Protocol Page
Related
Is OData only for Javascripts in Dynamics CRM 13/15/16 ?
Depends. You can use OData in a variety of languages.
CRM provides two OData based services, check out Use Microsoft Dynamics 365 web services.
Web API
The Web API is new for Microsoft Dynamics 365 (online & on-premises)
and will provide parity with the Organization service. Compared to the
Organization service, the Web API provides better compatibility across
a wide variety of programming languages, platforms, and devices. The
Web API implements the OData (Open Data Protocol) v4.
The web api is new, and can be easily used outside of CRM in multiple languages and platforms.
Organization Data service
The Organization Data service, also sometimes known as the “OData” or
“REST” endpoint has also been available since Microsoft Dynamics CRM
2011. This service implemented the OData v2 standard. While this service will continue to be available as-is for years to come, we are
deprecating it with Microsoft Dynamics 365.
The organization data service is old (and deprecated), this was harder to use outside of CRM. Most of the time people used JavaScript to access it from within CRM.
Which namespace should I be using for the latest Microsoft Web API OData:
System.Web.Http.Odata or System.Web.Odata?
The same classes appear in both namespaces, but I have not found anything directly stating which one to use.
I did find this article where the code examples are using System.Web.OData:
http://www.asp.net/web-api/overview/odata-support-in-aspnet-web-api/odata-v4/create-an-odata-v4-endpoint
I just want to be sure.
There exist two namespaces and assemblies because the two versions of OData are incompatible, though they can be used side-by-side.
Use System.Web.Http.OData for OData v3 and use System.Web.OData for OData v4.
You can read more about this on this blog post: http://blogs.msdn.com/b/webdev/archive/2014/03/13/getting-started-with-asp-net-web-api-2-2-for-odata-v4-0.aspx
You can find samples for Web API OData v3 and OData v4 here: https://github.com/OData/ODataSamples/tree/master/WebApi
GData is Google's version of OData. It is what Google uses to publish a number of their data sources. With OData there are both client and server side tools, but I am only seeing client libraries for GData. Are there server libraries for GData?
More research looks like GDAta is only published by Google, and then end users can only create clients. By design it is a one way system.
I have recently discovered OData & the new WCF Web APi library on codeplex. The web api allows me to expose results as IQueryable, which allows me to expose URL's in the OData format. Myn question is what is the difference between this and a regular OData Service, I read the following blog post http://phejndorf.wordpress.com/2011/07/15/wcf-web-api-odata-format-doesnt-mean-odata-service/ but I am unsure what the OP means.
Thanks
The WCF Web API supports adding a [QueryComposition] attribute to a function so you can use the OData $filter=.. style of filtering data on the server and sending only a subset back to the client.
With OData, I should say WCF Data Services, there is much more that just querying. You can do all of the CRUD operations. It also means you are using the OData, is an AtomPub superset, protocol where with WCF Web API you do whatever you like. OData is actually a hypermedia format that contains metada, relations etc.
I am trying to build a OData interface for Java application.
From what I have seen, one can create fully compliant OData services using microsoft technologies (aka visual studio) using their WCF services. Am I of the right impression?
I am trying to simulate OData services (it is also RESTful) using RESTlet + ROME(for atom feeds) + ROME Propono (for atompub service document). OData specification says that I canm access individual objects of a collection like http://mysite/service.svc/products(1)
Is there a way to represent this in RESTlet?
router.attach("products(id)") will not work
router.attach("products/get/{id}") is not really OData like.
Do you have any suggestions? Am I even doing it right?
Regards,
D
Have you tried this URI template?
router.attach("products({id})")