🙂 İNSANLARIN EN HAYIRLISI INSANLARA FAYDALI OLANDIR 🙂

Ramazan HABER / C# RMOS / Entity framework query to datatable

1-) C# RMOS - Entity framework query to datatable

 

 

 public DataTable getQueryToDataTableNew(string query, DbContext context)

        {

            DataTable dt= new DataTable();

            try

            {

                using (var cmd = context.Database.Connection.CreateCommand())

                {

                    cmd.CommandType = System.Data.CommandType.Text;

                    cmd.CommandText = query;

 cmd.CommandTimeout = 0;//sınırsız demek

                    SqlDataAdapter da = new SqlDataAdapter((SqlCommand)cmd);

                    da.Fill(dt);

                }

            }

            catch (Exception ex)

            {

                throw ex;

            }

 

            return dt;

        }

 

 

 

2- .NET CORE 6.0 QUERY TO DATATABLE

 

 

[ApiExplorerSettings(IgnoreApi = true)]

        [NonAction]

        public DataTable getQueryToDataTable(string query, DbContext context)

        {

            DataTable dt = new DataTable();

            try

            {

                using (var cmd = context.Database.GetDbConnection().CreateCommand())

                {

                    cmd.CommandType = System.Data.CommandType.Text;

                    cmd.CommandText = query;

                    SqlDataAdapter da = new SqlDataAdapter((SqlCommand)cmd);

                    da.Fill(dt);

                }

            }

            catch (Exception ex)

            {

            }

 

            return dt;

        }

 

 

 

ÖRN :

 

 

        public IActionResult EmployeeList()

        {

            using var c = new Context();//

            var data = getQueryToDataTable("exec  listele", c);

            string json = JsonConvert.SerializeObject(data);

            return Ok(json);

        }

 

 

 

AÇIKLAMA :

 

GİRDİ : select * from AlaRezMenu

ÇIKTI :

 

 

 

4- .NET CORE 6.0 QUERY TO DATATABLE PARAMETRELİ NON İNJECTİON

 

 

 

[HttpPost]

        [Route("texboxtipi")]

        public ActionResult<string> texboxtipi(DonemAra model)

        {

            List<DonemAraModelDonus> donemaramdeldonus = new List<DonemAraModelDonus>();//sınıfı listeye çeviriyoruz

 

            //appsetting.json dan gelen connection string baslangıç

 

            var configuration = new ConfigurationBuilder().AddJsonFile("appsettings.json", optional: true, reloadOnChange: true).Build();

            var connectionString = configuration.GetConnectionString("DbErzin");//connection string adı

 

            //appsetting.json dan gelen connection string bitiş

            string json = "";

 

            using (SqlConnection connection = new SqlConnection(connectionString))

            {

                connection.Open();//bağlantıyı açıyoruz

                string query = " exec aaa_Drup @Baslangic=@Baslangic ,@Bitis=@Bitis";

                SqlCommand command = new SqlCommand(query, connection);

                command.Parameters.AddWithValue("@Baslangic", model.Baslangic);

                command.Parameters.AddWithValue("@Bitis", model.Bitis);

 

                SqlDataAdapter da = new SqlDataAdapter(command);

                DataTable dataTable = new DataTable();

                da.Fill(dataTable);

                connection.Close();

 

                json = JsonConvert.SerializeObject(dataTable);

 

            }

 

 

            return Ok(json);

 

        }

 

 

 

 2023 Şubat 21 Salı
 382