Строка не была распознана как допустимый DateTime в c # SQL - PullRequest
0 голосов
/ 08 октября 2018

Я новичок в C #.У меня есть текстовое поле и кнопка.

Когда я нажимаю кнопку, в текстовом поле отображается дата и время.

protected void btnStartTime_Click(object sender, EventArgs e)
{
    txtSrvStartTime.Text = DateTime.Now.ToString("MM/dd/yyyy hh:mm:ss tt");
}

Теперь проблема в том, что когда я обновляю свою страницу, я получаю сообщение об ошибке

Строка не была распознана как действительный DateTime.

Вот мой синтаксис sqlCommand:

SelectCmd.Parameters.Add("@servStartTime", SqlDbType.DateTime).Value = DateTime.ParseExact(LblSrvEndTime.Text, "MM/dd/yyyy hh:mm:ss tt", null);

Ответы [ 3 ]

0 голосов
/ 08 октября 2018

У меня также была проблема с разбором строки в Date.Но ничего не помогло.Проблема была в настройках даты и времени Microsoft.Попробуйте поиграть с ним, потому что на разных машинах, в зависимости от этого параметра, у нас были или не были такие проблемы с разбором при одной культуре!Надеюсь, это кому-нибудь поможет.

0 голосов
/ 09 октября 2018

Спасибо за ваше драгоценное время.Я получил решение:

txtSrvStartTime.Text = DateTime.Now.ToString ("ч: мм: сс тт");

    SqlConnection connsv = new SqlConnection(ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString);
    connsv.Open();
    string SelectQuery = @"UPDATE [Table_Name] SET 
                            [Service Start Time]=@servStartTime
                            WHERE [ID]=@shipnum";

    SqlCommand SelectCmd = new SqlCommand(SelectQuery, connsv);
    SelectCmd.Parameters.Add("@servStartTime", SqlDbType.DateTime).Value = txtSrvStartTime.Text;
    SelectCmd.ExecuteNonQuery();
    connsv.Close();
0 голосов
/ 08 октября 2018

Попробуйте это

DateTime.ParseExact(LblSrvEndTime.Text, "MM/dd/yyyy hh:mm:ss tt", CultureInfo.InvariantCulture)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...