C# 使用dateTimePicker搜索一周中的所有天
我想检索一周中的所有天,选择给定周中的任何一天 示例:想要检索2016年7月31日(dd/MM/yyyy)到2016年8月6日(dd/MM/yyyy) 通过选择一周中的任何一天来显示眼压 可能吗 我当前的代码:C# 使用dateTimePicker搜索一周中的所有天,c#,winforms,date,sql-server-ce,datepart,C#,Winforms,Date,Sql Server Ce,Datepart,我想检索一周中的所有天,选择给定周中的任何一天 示例:想要检索2016年7月31日(dd/MM/yyyy)到2016年8月6日(dd/MM/yyyy) 通过选择一周中的任何一天来显示眼压 可能吗 我当前的代码: private void AutoLoadCalendar() { string constringF = @"Data Source=|DataDirectory|\cadastramentodb.sdf;Persist Security In
private void AutoLoadCalendar()
{
string constringF = @"Data Source=|DataDirectory|\cadastramentodb.sdf;Persist Security Info=False";
string QueryF = "select * from Funcionarios where (status = N'Ativo') and datepart(year, datafimcontrato) = @ano and datepart(month, datafimcontrato) = @mes ";
SqlCeConnection conDataBaseF = new SqlCeConnection(constringF);
SqlCeCommand cmdDataBaseF = new SqlCeCommand(QueryF, conDataBaseF);
cmdDataBaseF.Parameters.Add("@mes", SqlDbType.Int).Value = Convert.ToInt32(monthCalendar1.SelectionStart.Month);
cmdDataBaseF.Parameters.Add("@ano", SqlDbType.Int).Value = Convert.ToInt32(monthCalendar1.SelectionStart.Year);
try
{
SqlCeDataAdapter sda = new SqlCeDataAdapter();
sda.SelectCommand = cmdDataBaseF;
System.Data.DataTable dbdatasetF = new System.Data.DataTable();
sda.Fill(dbdatasetF);
BindingSource bSourceF = new BindingSource();
bSourceF.DataSource = dbdatasetF;
dataGridView1.DataSource = bSourceF;
sda.Update(dbdatasetF);
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
致意
您可以使用DATEPART函数知道一周中的哪一天有您选择的日期,并且知道该数字很容易解决您的问题
试试这个:
private void AutoLoadCalendar()
{
string constringF = @"Data Source=|DataDirectory|\cadastramentodb.sdf;Persist Security Info=False";
string QueryF =
"DECLARE @DiaSemana AS INT " +
"SET @DiaSemana=DATEPART(DW,@Fecha) " +
" " +
"SELECT * " +
"FROM Funcionarios " +
"WHERE [status] = N'Ativo' AND datafimcontrato >= DATEADD(DD,@DiaSemana*-1,@Fecha) AND datafimcontrato <= DATEADD(DD,7-@DiaSemana,@Fecha) ";
SqlCeConnection conDataBaseF = new SqlCeConnection(constringF);
SqlCeCommand cmdDataBaseF = new SqlCeCommand(QueryF, conDataBaseF);
cmdDataBaseF.Parameters.Add("@Fecha", monthCalendar1.Value);
try
{
SqlCeDataAdapter sda = new SqlCeDataAdapter();
sda.SelectCommand = cmdDataBaseF;
System.Data.DataTable dbdatasetF = new System.Data.DataTable();
sda.Fill(dbdatasetF);
BindingSource bSourceF = new BindingSource();
bSourceF.DataSource = dbdatasetF;
dataGridView1.DataSource = bSourceF;
sda.Update(dbdatasetF);
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
private void AutoLoadCalendar()
{
字符串constringF=@“数据源=|数据目录| \cadastramentodb.sdf;持久安全信息=False”;
字符串查询f=
“将@DiaSemana声明为INT”+
SET@DiaSemana=DATEPART(DW,@Fecha)+
" " +
“选择*”+
“来自Functionarios”+
“其中[状态]=N'Ativo'和datafimcontrato>=DATEADD(DD,@DiaSemana*-1,@Fecha)和datafimcontrato致以最诚挚的问候
您可以使用DATEPART函数知道一周中的哪一天有您选择的日期,并且知道该数字很容易解决您的问题
试试这个:
private void AutoLoadCalendar()
{
string constringF = @"Data Source=|DataDirectory|\cadastramentodb.sdf;Persist Security Info=False";
string QueryF =
"DECLARE @DiaSemana AS INT " +
"SET @DiaSemana=DATEPART(DW,@Fecha) " +
" " +
"SELECT * " +
"FROM Funcionarios " +
"WHERE [status] = N'Ativo' AND datafimcontrato >= DATEADD(DD,@DiaSemana*-1,@Fecha) AND datafimcontrato <= DATEADD(DD,7-@DiaSemana,@Fecha) ";
SqlCeConnection conDataBaseF = new SqlCeConnection(constringF);
SqlCeCommand cmdDataBaseF = new SqlCeCommand(QueryF, conDataBaseF);
cmdDataBaseF.Parameters.Add("@Fecha", monthCalendar1.Value);
try
{
SqlCeDataAdapter sda = new SqlCeDataAdapter();
sda.SelectCommand = cmdDataBaseF;
System.Data.DataTable dbdatasetF = new System.Data.DataTable();
sda.Fill(dbdatasetF);
BindingSource bSourceF = new BindingSource();
bSourceF.DataSource = dbdatasetF;
dataGridView1.DataSource = bSourceF;
sda.Update(dbdatasetF);
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
private void AutoLoadCalendar()
{
字符串constringF=@“数据源=|数据目录| \cadastramentodb.sdf;持久安全信息=False”;
字符串查询f=
“将@DiaSemana声明为INT”+
SET@DiaSemana=DATEPART(DW,@Fecha)+
" " +
“选择*”+
“来自Functionarios”+
其中[status]=N'Ativo,datafimcontrato>=DATEADD(DD,@DiaSemana*-1,@Fecha)还有datafimcontrato,您在代码中处理的日期在哪里?或者我应该说您在代码段中尝试在哪里执行此操作?dateparts和monthcalendarPut解决方案在下面的答案块中,而不是在问题中。您在代码中处理的日期在哪里?或者我应该说您在代码段中尝试在哪里执行此操作?dateparts和MonthCalendar将解决方案放在下面的答案栏中,而不是问题中。