Instead of filtering values from an Azure Storage Table, you can do it directly in the bindings. It might not be a solution for everything, but in the right place, it is fantastic. I was very surprised to see how little code was needed after this binding change:
Today I wanted to implement a search which uses an input and a hash query string like in google. The input value and url have to be synced like:
To do this we have to inject $location into our angular control. See the Angular Guide about $location. Then we have to observe both the $scope.term (which is bound to the input value) and $location.search().
var binding = new WSHttpBinding();
binding.Security.Mode = SecurityMode.None;
var endpoint = new EndpointAddress("http://super.domain/SuperService.svc");
var proxy = new ExternalServices.DreamServiceClient(binding, endpoint);
var result = proxy.GetSomething();