Oracle
 sql >> Database >  >> RDS >> Oracle

Come posso creare un'istanza di un Profiled DataAdapter da utilizzare con MVC MINI Profiler?

Secondo Rory

"C'è una classe ProfiledDbDataAdapter fornita per questo che puoi usare avvolta attorno al tuo SqlDataAdapter esistente."

Con questo suggerimento, puoi scrivere del codice come questo

public DbConnection _dbConnection;
private DbCommand _dbCommand;
private DbDataAdapter _dbDataAdapter;

public DataSet GetResultByProcWithSingleParam(string procName, SqlParameter sqlParams)
        {
            try
            {
                _dbCommand = _dbConnection.CreateCommand();
                _dbCommand.CommandType = CommandType.StoredProcedure;
                _dbCommand.Parameters.Add(sqlParams);
                _dbCommand.CommandText = procName;
                _dbConnection.Open();
                _dbCommand.ExecuteNonQuery();
                _dbDataAdapter = DbProviderFactories.GetFactory("System.Data.SqlClient").CreateDataAdapter();
                _dbDataAdapter = new ProfiledDbDataAdapter(_dbDataAdapter);
                _dbDataAdapter.SelectCommand = _dbCommand;
                _ds = new DataSet();
                _dbDataAdapter.Fill(_ds);
                _dbConnection.Close();
                return _ds;
            }
            catch (Exception ex)
            {

                throw;
            }

        } 

E gli spazi dei nomi per questo codice sono:

using System.Data;
using System.Data.Common;
using System.Data.SqlClient;
using StackExchange.Profiling;
using StackExchange.Profiling.Data;

Spero che funzionerà. Nel mio caso, funziona correttamente.