C# SQL zapis stringa w bazie danych jako DataTime

0

Mam kod:

SqlCommand command = new SqlCommand("INSERT INTO dbo.ODCZYTY (numer_karty,rodzaj,obszar,kierunek) VALUES(@numer_karty, @data, @rodzaj, @obszar, @kierunek)", conn);
                    
command.Parameters.AddWithValue("@numer_karty", line.Substring(0, 5));
command.Parameters.AddWithValue("@data", line.Substring(5, 14));
command.Parameters.AddWithValue("@rodzaj", line.Substring(19, 2));
command.Parameters.AddWithValue("@obszar", line[line.Length - 2]);
command.Parameters.AddWithValue("@kierunek", line[line.Length - 1]); 

Przy próbie wykonania tego, dostaje błąd:
"Conversion failed when converting date and /or time from character string."

Próbowałem konwersji stringa na DateTime:

string data = line.Substring(5, 14);
DateTime dt = Convert.ToDateTime(data); 

Jednak to nie działa, wyrzuca komunikat: "ciąg nie został rozpoznany jako prawidłowy element DateTime."
Może ktoś rozwiązywał taki problem, więc będę zobowiązany.

0

A co zawiera ten line.Substring(5, 14)?

0

Sorki, zapomniałem:

20160127122843 
0

Jakby ktoś kiedyś potrzebował:

string dateTimeString = line.Substring(5, 14); 
var d = DateTime.ParseExact(dateTimeString, "yyyyMMddHHmmss", CultureInfo.InvariantCulture); 

Dziękuje za pomoc!
Temat do zamknięcia!

1 użytkowników online, w tym zalogowanych: 0, gości: 1