0

有人可以帮忙用下面的代码吗!!

if (DiaryOccasions != null && DiaryOccasions.Rows.Count > 0)
{
    DataTable dtFilteredOccasions = new DataTable();

    if (ddlMonths.SelectedItem.Value != string.Empty)
    {
        string[] selMonthYear = ddlMonths.SelectedItem.Value.Split('/');

        if(selMonthYear.Length > 0)
        {
            dtFilteredOccasions = new DataView(DiaryOccasions,
                string.Format("MONTH(OccasionDate) = {0} AND YEAR(OccasionDate) = {1}",
                    selMonthYear[0].ToString(), selMonthYear[1].ToString()), 
                string.Empty, DataViewRowState.CurrentRows).ToTable();
        }
    }

    rptrDates.DataSource = dtFilteredOccasions;
    rptrDates.DataBind();
}

尝试时会在运行时引发以下错误:

该表达式包含未定义的函数调用 MONTH()。

请帮忙 !!

4

1 回答 1

0

Dataview 过滤器不是这样工作的。它的语法类似于 sql,但这并不意味着您可以在过滤器中调用 sql 函数。

于 2010-10-22T12:56:31.423 回答