【问题标题】:Is it possible to have asp:calender show a date from the database?是否可以让 asp:calendar 显示数据库中的日期?
【发布时间】:2013-04-20 11:33:57
【问题描述】:

我试图让用户在文本框中输入年份,如果数据库中存在年份(其中有学期的特定日期),它会在日历中显示这些日期。

我已经寻找了几天的方法,但我找不到任何帮助。

这甚至可能吗?我希望能够为此使用 SQLDataSource,但我无法将连接字符串添加到日历中。

任何帮助都会很棒! 标记

*已修订**** 我的数据库中有一个表,其中包含每个大学学期的开始日期和结束日期,例如秋季、春季、夏季以及复活节假期。我希望用户能够输入他们希望更改日期的年份并点击搜索按钮。如果数据库有输入年份的记录,则显示每个日期的日历,从数据库中选择日期,而不是当前日期。

【问题讨论】:

  • 我听不懂你的问题。请简要解释一下
  • 让我说得对,您想要为所选年份的表格中的每个日期设置日历控件吗?
  • 是的,只是这样可以节省用户点击大量时间来获得他们想要的年份。
  • 那么如果您的表格中有 40 个日期,您希望显示 40 个日历控件吗?
  • 没有。我有八个日历(秋季开始,秋季结束,春季开始,春季结束,夏季开始,夏季结束,复活节开始,复活节结束)。在用户输入数据库中的年份之前,这些都是隐藏的。然后,这些日历是可见的,显示数据库中的日期。如果搜索的年份不在数据库中,他们可以添加该年份,日历将显示该年份的 1 月 1 日。

标签: asp.net vb.net visual-studio calendar


【解决方案1】:

终于弄清楚如何将数据库中设置的日期显示在日历中。代码如下:

        Dim strConn As String = "Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\scrummingit2.mdf;Integrated Security=True;User Instance=True"
        Dim sql As String = "SELECT [Year], [Autumn_Start], [Autumn_End], [Spring_Start], [Spring_End], [Summer_Start], [Summer_End], [Easter_Start], [Easter_End] FROM [Semester_Dates] WHERE ([Year] = '" + TxtAddYearDates.Text + "')"

        Dim conn As New SqlConnection(strConn)
        Dim objDR As SqlDataReader
        Dim Cmd As New SqlCommand(Sql, conn)
        conn.Open()
        objDR = Cmd.ExecuteReader(System.Data.CommandBehavior.CloseConnection)
        While objDR.Read()

            AutumnStartCalendar.SelectedDate = objDR("Autumn_Start")
            AutumnStartCalendar.VisibleDate = objDR("Autumn_Start")

            AutumnEndCalendar.SelectedDate = objDR("Autumn_End")
            AutumnEndCalendar.VisibleDate = objDR("Autumn_End")

            SpringStartCalendar.SelectedDate = objDR("Spring_Start")
            SpringStartCalendar.VisibleDate = objDR("Spring_Start")

            SpringEndCalendar.SelectedDate = objDR("Spring_End")
            SpringEndCalendar.VisibleDate = objDR("Spring_End")

            SummerStartCalendar.SelectedDate = objDR("Summer_Start")
            SummerStartCalendar.VisibleDate = objDR("Summer_Start")

            SummerEndCalendar.SelectedDate = objDR("Summer_End")
            SummerEndCalendar.VisibleDate = objDR("Summer_End")

            EasterStartCalendar.SelectedDate = objDR("Easter_Start")
            EasterStartCalendar.VisibleDate = objDR("Easter_Start")

            EasterEndCalendar.SelectedDate = objDR("Easter_End")
            EasterEndCalendar.VisibleDate = objDR("Easter_End")


        End While

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多