Member 13141551 Ответов: 0

Я хочу сравнить дату столбца представления сетки с системной датой, а затем включить кнопку Отключить ссылку?


я хочу сравнить дату столбца представления сетки с системной датой, а затем включить отключить кнопку ссылки? как это возможно, я пытаюсь сделать какую-то ошибку в заднице.


ошибка ({"строка не была распознана как допустимая Дата-Время. Существует неизвестное слово, начинающееся с индекса 0."})

Что я уже пробовал:

LinkButton lnk2 = (LinkButton)e.Row.FindControl("lnkSelect");
            if (e.Row.RowType == DataControlRowType.DataRow)
            {
                string dtimeString = Convert.ToDateTime(e.Row.Cells[2].Text).ToString("yy/MM/dd");

                DateTime dtime = Convert.ToDateTime(dtimeString);

                DateTime nowtime = Convert.ToDateTime(DateTime.Now.ToString("yy/MM/dd"));
                if (dtime == nowtime)
                {
                    lnk2.Enabled = true;
                    //change the column backcolor 
                  //  e.Row.Cells[0].BackColor = System.Drawing.Color.Yellow;

                    //change the row backcolor
                    //  e.Row.BackColor = System.Drawing.Color.Yellow;
                }
                if (dtime > nowtime)
                {
                    lnk2.Enabled = false;
                    e.Row.Cells[0].BackColor = System.Drawing.Color.Red;

                    // e.Row.BackColor = System.Drawing.Color.Red;
                }
            }

[no name]

Сообщение об ошибке говорит вам, в чем проблема.

shreyal acharya

также вы сравниваете свои данные в запросе.

Richard MacCutchan

В чем смысл этих строк:

1. string dtimeString = Convert.ToDateTime(e.Row.Cells[2].Text).ToString("yy/MM/dd");

2. DateTime dtime = Convert.ToDateTime(dtimeString);

3. DateTime nowtime = Convert.ToDateTime(DateTime.Now.ToString("yy/MM/dd"));

1. вы берете строку (предположительно дату), преобразуете ее в значение DateTime, а затем преобразуете обратно в строку.

2. Принять окончательное строку из 1 и преобразовать его обратно в datetime.

3. Вы получаете текущее время (которое является DateTime), преобразуете его в строку, а затем немедленно преобразуете обратно в DateTime.

Не используйте строки при сравнении или ином манипулировании значениями DateTime. Используйте фактические числовые значения.

Suvendu Shekhar Giri

мой виртуальный 5!

0 Ответов