Извлечение файла excel из таблицы mysql с помощью entitymodel / C#
Я пытаюсь получить конкретные строки между 2 датами 1 и 2 Из таблицы MySQL и преобразовать таблицу результатов в файл excel .
Я попробовал метод mysqlConnection , он отлично работает, но я хочу сделать то же самое, используя метод entity model .
MysqlCoonection компания Methode :
MySqlConnection connection = new MySqlConnection("datasource=;port=;username=;password="); connection.Open(); string sQuery = "select * from DB.table1 WHERE date = '" + d1 + "' and date <='" + d2+ "' "; MySqlDataAdapter cmd= new MySqlDataAdapter(sQuery, connection); DataSet ds = new DataSet(); cmd.Fill(ds); //Conversion part code Excel.Application app; Excel.Workbook wb; Excel.Worksheet ws; object misValue = System.Reflection.Missing.Value; app = new Excel.Application(); app.Visible = true; wb = app.Workbooks.Add(misValue); ws = (Excel.Worksheet)wb.ActiveSheet; for (int i = 0; i < ds.Tables[0].Columns.Count; i++) { ws.Cells[1, i + 1] = ds.Tables[0].Columns[i].ColumnName; } for (int k = 1; k < ds.Tables[0].Rows.Count; k++) { for (int j = 0; j < ds.Tables[0].Columns.Count; j++) { ws.Cells[k + 1, j + 1] = ds.Tables[0].Rows[k][j].ToString(); } }
Что я уже пробовал:
То, что я пробовала в сущности, компания Methode :
table_Entity result = new table_Entity(); var EntityQuery=from t in DB.Table1 where t.date >= d1 && t.date <= d2 select t; var result = EntityQuery.ToList();
Можно ли использовать результат var и скопировать его в набор данных, чтобы использовать его в той же части кода excel преобразования ?
Спасибо Вам за вашу помощь и внимание .
Gerry Schmitz
Да, вам просто нужно выяснить, что находится в "var result".
EM_Y
Привет Джерри
Я почти теряю надежду выложить свою проблему . Я изо всех сил стараюсь понять ,Спасибо вам за ваш ответ !
Richard Deeming
string sQuery = "select * from DB.table1 WHERE date = '" + d1 + "' and date <='" + d2+ "' ";
Не делай этого так! Ваш код уязвим для SQL-инъекция[^]. НИКОГДА используйте конкатенацию строк для построения SQL-запроса. ВСЕГДА используйте параметризованный запрос.
Все, что вы хотели знать о SQL-инъекции (но боялись спросить) | Трой Хант[^]
Как я могу объяснить SQL-инъекцию без технического жаргона? | Обмен Стеками Информационной Безопасности[^]
Шпаргалка по параметризации запросов | OWASP[^]
EM_Y
Привет, Ричард, я использую здесь запрос entity framework, а не oledb-соединение . Мне не нужен параметризованный запрос .
Richard Deeming
Неуместный. Если вы выполняете необработанный SQL-запрос, вам необходимо использовать параметры.