I’m currently doing research and revision for my 70-487 exam – Developing Microsoft Azure and Web Services. I was doing some reading and I encountered some information about hosting WCF Data Services and OData. It wasn’t something I had encountered in so far – so it has been an interesting and exciting prospect to look into.
First problem : I need some data. I’m quite getting into LocalDB at the moment – I’m thinking about the possibility of creating a developer database through migration scripts – so that a developer could clone a Github repo and run the project. The Database would be automatically created for them, and populated with sample data (if appropriate) – meaning that developers could run this project without a dependency on a database or fancy storage like that.
I managed to get the SQL Scripts for Northwind from codeplex – but with almost everything that Microsoft does these days being on github – going back to codeplex seemed old and outdated.
I followed through the instructions and ran the project.
OData seems to be very similar to REST – except that the url used are representative of the entity structure(rather than hiding behind controllers), and query like operations can be passed through to the server – giving maximum flexibility in terms of usage. So – anyway… I ran my project from Visual Studio 2015.
Yay – I have metadata about my service.Next step was to view the contents of the customers service by subtly altering the URL to add Customers to the end.
And then this happened :
A pop up from Edge saying that Customers couldn’t be downloaded? That can’t be right. Let’s have a look at the same thing on Chrome.
So what’s going on here – my service works fineunder Chrome – but fails under Edge? Only Edge? How about IE
It does seem to show the data under Internet Explorer – so it just appears to be the Edge Browser which is causing the problem. Next up – let’s run the network tab, and we’ll see what’s shaking.
So – notice that the result is still pending? In comparison navigating to http://localhost:50739/NorthwindCustomers.svc/ returns the following:
Currently I’m working under the theory that Edge just doesn’t understand an element of the communication received. Given that the same service is being used for all browsers, then the issue is down to how Edge interprets some header received from the server.
Next up : I’ll record the headers that are returned from the service and see if I can determine a difference between the browsers – until I learn more though, I’ll have to work under the assumption that Edge just won’t work with this stuff
Mike is the programmer in the bunker. He writes software for a shaddowy software house in Worcester. He works mainly in .NET and python, but equally has found himself having to support different technologies such as MAXScript and .NET integration. Spending most of his time working on his passion of content packaging, and is currently working on an ebook authoring system for Ubuntu.
Although he is the main programmer on the site he doesn’t do much with regard to writitng games