2016-04-12 24 views
-2

Benim açılan bu
my dropdown is like thisAçılır listeden veritabanına nasıl zaman kazandırırım?

burada iam depolama seçilen türü 'ZamanGeçişi' bir değişken içine açılan değeri ve veritabanında kurtarmak gibidir. Ancak bu durum istisnai bir durumdur: 'Dize geçerli bir Zaman Dilimi olarak tanınmadı. 'benim veritabanı FIELDTYPE (7)

DateTime start_time = DateTime.ParseExact(starttime.SelectedItem.Text, "hh:mm tt", CultureInfo.InvariantCulture); 
TimeSpan stt = start_time.TimeOfDay; 
SqlCommand com = new SqlCommand("INSERT INTO IvrDatas starttime values @starttime",conn); 
com.Parameters.AddWithValue("@starttime", stt) 

bu konuda bana yardım edin de Time. TimeSpan.Parse işleviyle ayrıştırılamıyor "

+0

yazın. "TimeSpan.Parse" dokümantasyonuna ne dersiniz? –

+0

Evet, ama benim kodum için bir çözüm bulamadım – ahmed

+0

Tek bir zaman değeri bir "TimeSpan" nasıl tanımlanabilir? DateTime.Parse (starttime.SelectedItem.Text) .Time' için aramadığınızdan emin misiniz? – GigiSan

cevap

1

" 11:00 AM ". aşağıdaki gibi ParseExact işlevini kullanabilirsiniz:

DateTime.ParseExact(starttime.SelectedItem.Text, "hh:mm tt", CultureInfo.InvariantCulture); 

Sen ".TimeOfDay" fonksiyonu ile çözümlenen datetime gelen zaman çıkarabilir. Bu size uygun değeri verecek ve

+0

DateTime türünde değişken satırında ur depolamalıyım? Veritabanındaki alan da zamandan (7) DateTime'a mı değiştirilmelidir? Sağ? – ahmed

+0

Parsed datetime saatini ".TimeOfDay" işleviyle ayıklayabilirsiniz. Bu size uygun bir değer ve – MarkB

+0

türünü öneririm Ur önerisini denedim ama istisna verdi: ** String geçerli bir DateTime ** olarak tanınmadı ve kodumu da düzenledim. Bunu doğru yapıp yapmadığımı kontrol edebilirim. – ahmed

İlgili konular