Выполнение sql в платформе объекта?

Оба метода для хранения свойств объекта совершенно действительны. Необходимо отступить от прагматических соображений. Попытайтесь ответить на следующий вопрос:

  1. , Какое представление приводит к более быстрым данным parsing\generation?
  2. , Какое представление приводит к более быстрой передаче данных?
  3. удобочитаемость имеет значение?

    ...

5
задан David 5 November 2009 в 22:56
поделиться

3 ответа

На днях сам искал это в Google, это пример, который я нашел, надеюсь, он поможет

  static void ExecuteSql(ObjectContext c, string sql)
    {
        var entityConnection = (System.Data.EntityClient.EntityConnection)c.Connection;
        DbConnection conn = entityConnection.StoreConnection;    
        ConnectionState initialState = conn.State;
        try
        {
            if (initialState != ConnectionState.Open)
                conn.Open();  
            using (DbCommand cmd = conn.CreateCommand())
            {
                cmd.CommandText = sql;
                cmd.ExecuteNonQuery();
            }
        }
        finally
        {
            if (initialState != ConnectionState.Open)
                conn.Close(); 
        }
    }
10
ответ дан 18 December 2019 в 10:46
поделиться

В EF 4.0 это довольно просто, потому что есть новые методы в ObjectContext , которые позволяют выполнять команды сохранения (например, SQL) напрямую:

См. Это: ExecuteStoreCommand

Если вы все еще используете EF 3.5 SP1 вы все равно можете выполнить запрос непосредственно к базе данных, если вам действительно это нравится:

var econn = ctx.Connection as EntityConnection;
var dbconn = econn.StoreConnection;

на этом этапе у вас есть доступ к соединению (dbconn) с базовой базой данных, поэтому вы можете использовать обычный код ADO.NET для выполнения запросов и т. д.

Надеюсь, это поможет

Alex

5
ответ дан 18 December 2019 в 10:46
поделиться

@Alex James, из любопытства, будет ли это эффективным для запуска полнотекстового фрагмента кода sql , так как не должно быть накладных расходов на производительность, верно? Например, запуск того же полнотекстового кода sql прямо как запрос в sql management studio.

0
ответ дан 18 December 2019 в 10:46
поделиться
Другие вопросы по тегам:

Похожие вопросы: