{"action":"closed","issue":{"url":"https://api.github.com/repos/aspnet/EntityFramework/issues/624","labels_url":"https://api.github.com/repos/aspnet/EntityFramework/issues/624/labels{/name}","comments_url":"https://api.github.com/repos/aspnet/EntityFramework/issues/624/comments","events_url":"https://api.github.com/repos/aspnet/EntityFramework/issues/624/events","html_url":"https://github.com/aspnet/EntityFramework/issues/624","id":41968538,"number":624,"title":"Raw store access APIs","user":{"login":"divega","id":1253414,"avatar_url":"https://avatars.githubusercontent.com/u/1253414?v=3","gravatar_id":"","url":"https://api.github.com/users/divega","html_url":"https://github.com/divega","followers_url":"https://api.github.com/users/divega/followers","following_url":"https://api.github.com/users/divega/following{/other_user}","gists_url":"https://api.github.com/users/divega/gists{/gist_id}","starred_url":"https://api.github.com/users/divega/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/divega/subscriptions","organizations_url":"https://api.github.com/users/divega/orgs","repos_url":"https://api.github.com/users/divega/repos","events_url":"https://api.github.com/users/divega/events{/privacy}","received_events_url":"https://api.github.com/users/divega/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/aspnet/EntityFramework/labels/enhancement","name":"enhancement","color":"bfe5bf"}],"state":"closed","locked":false,"assignee":null,"milestone":null,"comments":11,"created_at":"2014-09-04T18:24:43Z","updated_at":"2015-08-05T21:43:04Z","closed_at":"2015-08-05T21:43:04Z","body":"In previous versions of EF we had handy \"raw SQL\" methods such as SqlQuery and ExecuteSqlCommand that allowed to drop down to the underlying relational provider to execute SQL queries directly (i.e. bypassing the EF mapping) but still take advantage of some of the services provided by EF, e.g. connection management, transaction handling, object materialization and change tracking. \r\n\r\nIn EF7 since we support relational as well as non relational providers we should figure out how to extend this concept to specific providers through a consistent pattern, e.g. for Azure Table Storage it probably makes sense to provide access to the underlying objects from the .NET storage client library, while for relational stores being able to access the underlying connection and having something like SqlQuery and ExecuteSqlCommand defined as extension methods probably makes sense."}}