Как обращать информацию о типе string одного asp:TextBox в DATE SQL Server?

Такое что, у меня есть exception, послав данные о моем формуляре db (webforms) в sqlserver., я использую textbox с datapicker bootstrap и послав это в утверждение в c#, меня производит ошибка из-за типа информации, как обращать информацию text в DATE?

           <div class="form-group">
                <div id="date2">
                    <label for="DateTextbox" class="col-sm-2 control-label">Created Date</label>
                    <div class='input-group col-sm-10 date' id="Created_date_picker">
                        <asp:TextBox ID="DateTextbox" name="expirationday" CssClass="form-control" placeholder="Created Date" runat="server">
                        </asp:TextBox>
                        <span class="input-group-addon">
                            <span class="glyphicon glyphicon-calendar"></span>
                        </span>
                    </div>
                </div>
            </div>

            <div class="form-group">
                <label for="TextBox2" class="col-sm-2 control-label">Calification Clasification</label>
                <div class='col-sm-10'>
                    <asp:TextBox ID="TextBox2" name="title" CssClass="form-control" placeholder="Calification" runat="server"></asp:TextBox>

                </div>
            </div>


SqlCommand cmd = new SqlCommand("INSERT INTO Tabla (CREATED_DATE,CALIFICATION_1)VALUES(@CREATED_DATE,@CALIFICATION_1;", con);


        cmd.CommandType = CommandType.Text;

        cmd.Parameters.Add("@CREATED_DATE", SqlDbType.Date);
        cmd.Parameters.Add("@CALIFICATION_1", SqlDbType.Int);

        //asignamos el valor de los textbox a los parametros

        cmd.Parameters["@CREATED_DATE"].Value = DateTextbox.Text;
        cmd.Parameters["@CALIFICATION_1"].Value = TextBox2.Text;


        //abrimos conexion
        con.Open();
        //ejecutamos la instruccion con ExcecuteNonQuerry indicando que no retorna registros.
        cmd.ExecuteNonQuery();

        //cerramos conexion
        con.Close();

нужно упоминать о том, что колонна таблицы CREATED_DATE - типа, восходите.

4
задан 08.06.2016, 23:44
4 ответа

Ты должен менять это:

cmd.Parameters["@CREATED_DATE"].Value = DateTextbox;

... во что-либо подобное или ближнюю:

cmd.Parameters["@CREATED_DATE"].Value = DateTextbox.Date;

, Если он даже кажется плохо, старался меняться с чем-то как:

string sqlFormattedDate = DateTextbox.Date.ToString("yyyy-MM-dd HH:mm:ss");

ОБНОВЛЯТЬ

, Если DateTextbox - Textbox и не DateTimePicker, ты можешь использовать:

string sqlFormattedDate = DateTextbox.Text.ToString("yyyy-MM-dd HH:mm:ss");

... и после:

cmd.Parameters["@CREATED_DATE"].Value = sqlFormattedDate;
1
ответ дан 24.11.2019, 14:13
  • 1
    он говорит мне, что textbox у него нет определения для date, уже я это искал в msdn.microsoft.com/es-es/library/… И ДЕЙСТВИТЕЛЬНО у TEXTBOX НЕТ НИКАКОГО СВОЙСТВА ВОСХОДИТЕ, я осведомляюсь о, был ли должен контроль меняться textbox из-за какого-то другого? – matteo 07.06.2016, 21:57
  • 2
    Извините; я думаю, что DateTextBox был DateTimePicker. Ты можешь использовать " string sqlFormattedDate = DateTextbox. Text. ToString (" ийии-ММ-дд HH:mm:ss"); " и после " cmd. Parameters [" @CREATED_DATE"].Value = sqlFormattedDate; " – B. Clay Shannon 07.06.2016, 21:59
  • 3
    меня производит ошибка тип system.format.exception – matteo 07.06.2016, 22:52
  • 4
    Что находится в DateTextbox. Text? – B. Clay Shannon 07.06.2016, 23:06

Попытайся с этим

string датируйте = DateTextbox. Text; DateTime конвертировать = Convert. ToDateTime (восходил);

Только ты добавляешь переменную конвертировать в твои параметры. Я надеюсь, что он подает тебе привет.

0
ответ дан 24.11.2019, 14:13

Попытайся с этим

string датируйте = DateTextbox. Text; DateTime конвертировать = Convert. ToDateTime (восходил);

Только ты добавляешь переменную конвертировать в твои параметры. Я надеюсь, что он подает тебе привет.

0
ответ дан 24.11.2019, 14:13

_./

Твой код - следующий:

cmd.Parameters["@CREATED_DATE"].Value = DateTextbox.Date;

Ты мог бы реализовывать следующее:

DateTime d = DateTime.parse(DatetTextbox.Text);
cmd.Parameters["@CREATED_DATE"].Value = d.Date;

Я надеюсь, что оно ты функционирует.

Удачи! :D

0
ответ дан 24.11.2019, 14:13