Можно ли запустить родной sql с сущностью Framework?

По умолчанию json результат сериализует все свойства bean, указанные параметром root, который по умолчанию установлен на действие. Но вы можете использовать параметр includeProperties результата для фильтрации только тех свойств из root, которые соответствуют выраженным выражениям регулярных выражений.

@Result(type="json", params = {"includeProperties", "^s2"})
65
задан Amicable 30 April 2014 в 13:56
поделиться

1 ответ

Для .NET Framework версии 4 и выше: используйте ObjectContext.ExecuteStoreCommand () , если ваш запрос не возвращает результатов, и используйте ObjectContext.ExecuteStoreQuery , если ваш запрос возвращает результаты.

Для предыдущих версий .NET Framework вот пример, иллюстрирующий, что делать. При необходимости замените ExecuteNonQuery (), если ваш запрос возвращает результаты.

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();  // open connection if not already open
        using (DbCommand cmd = conn.CreateCommand())
        {
            cmd.CommandText = sql;
            cmd.ExecuteNonQuery();
        }
    }
    finally
    {
        if (initialState != ConnectionState.Open)
            conn.Close(); // only close connection if not initially open
    }
}
72
ответ дан 24 November 2019 в 15:23
поделиться
Другие вопросы по тегам:

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