繁体   English   中英

运行日历时找不到表0

[英]Cannot find table 0 when running calendar

构建的代码可将员工的工作日期附加到日历上,当将员工分配给工作日期时,日历将标记为红色。

但是在尝试运行代码时找不到表0

系统IndexOutOfRangeException HResult 0x80131508消息找不到表0。

 public partial class Schema: System.Web.UI.Page {
     protected DataSet dsDays;
     protected void Page_Load(object sender, EventArgs e) {
         Calendar1.VisibleDate = DateTime.Today;
         FillDayDataset();
     }
     protected void FillDayDataset() {
         dsDays = GetCurrentMonthData();
     }
     protected DataSet GetCurrentMonthData() {
         DataSet dsMonth = new DataSet();
         String query;
         query = "SELECT * FROM Schema WHERE EmployeeId = @EmployeeId";
         Session["EmployeeId"]));
         SqlDataAdapter sqlDataAdapter = new SqlDataAdapter(dbCommand);
         try {
             sqlDataAdapter.Fill(dsMonth);
         } catch {}
         return dsMonth;
     }
     protected void Calendar1_DayRender(object sender, DayRenderEventArgs e) {
         if (dsDays != null) {
             if (Session["EmployeeId"] != null) {
                 foreach(DataRow dr in dsDays.Tables[0].Rows) {
                     if ((DateTime) dr["Arbetsdatum"] == e.Day.Date) {
                          e.Cell.BackColor = System.Drawing.Color.Pink;
                     }
                 }
             }
         }
     }
     protected void Calendar1_VisibleMonthChanged(object sender,
         MonthChangedEventArgs e) {
         FillDayDataset();
     }
 }

我想命令sqlDataAdapter.Fill(dsMonth); 引发异常。 您应该捕获异常以检测出问题所在。

catch (Exception e)
    {
        Console.WriteLine("{0} Exception caught.", e);
    }

而且,您缺少数据库连接。

SqlConnection connection = new SqlConnection(connectionString);
SqlDataAdapter sqlDataAdapter = new SqlDataAdapter();
sqlDataAdapter.SelectCommand = new SqlCommand(query, connection);
sqlDataAdapter.Fill(dataset);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM