Фильтр по диапазону дат в datagridview
На форме таблица, которая грузится из БД SQL и 2 datetimepicker. В таблице есть столбец формате data. Нужно по нажатию кнопки отфильтровать по диапазону дат. т.е выбрал 23.08 в первом пикере и 5.09 в другом. по нажатию кнопки должны остаться строки с 23.08 по 05.09. Сколько тем перерыл даже не пойму как сделать фильтр или перезаполнять таблицу. Помогите пожалуйста. Вот попытка сделать но ошибка в том что Dt1.Value.ToString("yyyy / MM / dd") не воспринимает и надо создать переменную уууу и ММ
query = "Select* from dbo.Returntable Where Date BETWEEN '{Dt1.Value.ToString("yyyy / MM / dd")}' and '{Dt2.Value.ToString("yyyy / MM / dd")}'";
dbAdp = new SqlDataAdapter(query, sqlConn);
SqlCommandBuilder cBuilder = new SqlCommandBuilder(dbAdp);
dbTable = new DataTable();
dbAdp.Fill(dbTable);
BindingSource bs = new BindingSource();
bs.DataSource = dbTable;
Returndgv.DataSource = bs;
Returndgv.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.Fill;
Ответы (1 шт):
Автор решения: Dimanson
→ Ссылка
Да, точно. Подозреваю, что Вы хотели это (привожу код для теста):
[Test]
public void TestStringVerb()
{
DateTime dt1 = DateTime.Now;
DateTime dt2 = dt1.AddDays(1);
string s = $@"Select* from dbo.Returntable Where Date BETWEEN '{dt1:yyyy/MM/dd}' and '{dt2:yyyy/MM/dd}'";
Console.WriteLine(s);
}
Результат выполения:
Select* from dbo.Returntable Where Date BETWEEN '2021.09.03' and '2021.09.04'
Оно?
