{"action":"closed","issue":{"url":"https://api.github.com/repos/Azure/azure-webjobs-sdk/issues/517","labels_url":"https://api.github.com/repos/Azure/azure-webjobs-sdk/issues/517/labels{/name}","comments_url":"https://api.github.com/repos/Azure/azure-webjobs-sdk/issues/517/comments","events_url":"https://api.github.com/repos/Azure/azure-webjobs-sdk/issues/517/events","html_url":"https://github.com/Azure/azure-webjobs-sdk/issues/517","id":77710058,"number":517,"title":"I'd like a table argument binding that supports a diversity of efficient operations","user":{"login":"marklio","id":529657,"avatar_url":"https://avatars.githubusercontent.com/u/529657?v=3","gravatar_id":"","url":"https://api.github.com/users/marklio","html_url":"https://github.com/marklio","followers_url":"https://api.github.com/users/marklio/followers","following_url":"https://api.github.com/users/marklio/following{/other_user}","gists_url":"https://api.github.com/users/marklio/gists{/gist_id}","starred_url":"https://api.github.com/users/marklio/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/marklio/subscriptions","organizations_url":"https://api.github.com/users/marklio/orgs","repos_url":"https://api.github.com/users/marklio/repos","events_url":"https://api.github.com/users/marklio/events{/privacy}","received_events_url":"https://api.github.com/users/marklio/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"milestone":{"url":"https://api.github.com/repos/Azure/azure-webjobs-sdk/milestones/8","html_url":"https://github.com/Azure/azure-webjobs-sdk/milestones/1.1.0-alpha1","labels_url":"https://api.github.com/repos/Azure/azure-webjobs-sdk/milestones/8/labels","id":810510,"number":8,"title":"1.1.0-alpha1","description":"","creator":{"login":"davidmatson","id":3360277,"avatar_url":"https://avatars.githubusercontent.com/u/3360277?v=3","gravatar_id":"","url":"https://api.github.com/users/davidmatson","html_url":"https://github.com/davidmatson","followers_url":"https://api.github.com/users/davidmatson/followers","following_url":"https://api.github.com/users/davidmatson/following{/other_user}","gists_url":"https://api.github.com/users/davidmatson/gists{/gist_id}","starred_url":"https://api.github.com/users/davidmatson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/davidmatson/subscriptions","organizations_url":"https://api.github.com/users/davidmatson/orgs","repos_url":"https://api.github.com/users/davidmatson/repos","events_url":"https://api.github.com/users/davidmatson/events{/privacy}","received_events_url":"https://api.github.com/users/davidmatson/received_events","type":"User","site_admin":false},"open_issues":2,"closed_issues":12,"state":"open","created_at":"2014-10-01T20:35:26Z","updated_at":"2015-06-09T23:32:25Z","due_on":null,"closed_at":null},"comments":3,"created_at":"2015-05-18T15:59:35Z","updated_at":"2015-06-09T23:32:25Z","closed_at":"2015-06-09T23:32:25Z","body":"Table bindings are really great, but the options available are either read or write, and mixing them (with multiple arguments) leads to observation of inconsistent state (because writes don't necessarily flush partitions).  I'd love to see a binding with the following abilities:\r\n* Add (and I'd love Insert/Replace/Merge enforcement) (It would also be nice to have \"bulk background adds\" as well, with an associated WaitForBackgroundAddsAsync() or something)\r\n* Flush (to force the flushing of batch operations so queries can see consistent state)\r\n* AsQuery (that would return something IQueryable)\r\n* Efficient single lookup by keys (Retrieve)\r\n* Delete by keys or set of entities\r\n(And async versions of all :) )\r\n\r\nThis, of course, can be accomplished with CloudTable directly, but requires far more code than the other bindings, and feels wrong in the world of WebJobs SDK.\r\n\r\nFailing this, extensibility to add my own such binding would rock."}}