C# 如何在ASP.NET中从MS Access检索数据并分配给中继器控件

C# 如何在ASP.NET中从MS Access检索数据并分配给中继器控件,c#,asp.net,C#,Asp.net,我想从MS Access获取数据并将其分配给中继器控件。我使用了以下代码,效果很好: OleDbConnection con = new OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0; Data Source=D:\\Joshua_WEB_be.mdb; Persist Security Info=False;"); protected void Page_Load(object sender, EventArgs e) { co

我想从MS Access获取数据并将其分配给中继器控件。我使用了以下代码,效果很好:

OleDbConnection con = new OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0; Data Source=D:\\Joshua_WEB_be.mdb; Persist Security Info=False;");

protected void Page_Load(object sender, EventArgs e)
{
    con.Open();
    OleDbCommand myComd = new OleDbCommand("SELECT * FROM tblEvents", con);       
    OleDbDataAdapter da = new OleDbDataAdapter(myComd);
    DataSet ds = new DataSet();
    da.Fill(ds);
    Repeater1.DataSource = ds;
    Repeater1.DataBind();
    con.Close();
}
但是我想显示从开始日期算起的日期和月份字段,所以我使用了查询:

 OleDbCommand myComd = new OleDbCommand("SELECT [RIGHT('0' + CAST(DAY(Start_Date()) AS varchar(2)), 2) 'Day'],[MONTH(Start_Date()) 'Month'], [Event_Title], [Event_Time] FROM tblEvents", con);

但是它显示了一个错误。

如果我记得清楚的话,天、月是VBA函数,在使用oledb时不可用。那么如何为oledb执行此操作,有什么想法不确定是否可以绕过此限制,但可以尝试在access db中创建一个查询,然后从oledb调用它,传递参数并将CommantType定义为StoredProcess。您没有告诉我们错误是什么吗?我们需要看到错误。此外,SQL语句的语法不正确。我建议您检查SQL是否正确。查看DATEPART以获取日、月替换