Как сделать необработанный SQL-запрос с DbContext (одно соединение на запрос)? - PullRequest
0 голосов
/ 28 марта 2019

В настоящее время я следую этой инструкции о том, как выполнить запрос с помощью raw sql на ef.

https://docs.microsoft.com/en-us/ef/ef6/querying/raw-sql

Можно ли выполнить необработанный SQL-запрос (и) чтения для контекста базы данных таким образом, чтобы мы были уверены, что при обработке запроса мы используем только одно соединение с базой данных.

Аналогично этому, но с DBContext вместо IDBConnection.

public class SqlConnectionFactory : ISqlConnectionFactory, IDisposable
    {
        private readonly string _connectionString;
        private IDbConnection _connection;

        public SqlConnectionFactory(string connectionString)
        {
            this._connectionString = connectionString;
        }

        public IDbConnection GetOpenConnection()
        {
            if (this._connection == null || this._connection.State != ConnectionState.Open)
            {
                this._connection = new SqlConnection(_connectionString);
                this._connection.Open();
            }

            return this._connection;
        }

        public void Dispose()
        {
            if (this._connection != null && this._connection.State == ConnectionState.Open)
            {
                this._connection.Dispose();
            }
        }
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...