Saya memiliki sedikit masalah di sini dan ingin tahu di mana kesalahan saya dan bagaimana memperbaikinya.

string preConvDATE = monthCombobox2.Text + " " + datecombobox2.Text + ","+ "0000";
//lets say the comboboxes contain something like this "January 1";

DateTime DT = DateTime.ParseExact(preConvDATE, "MMMM d, yyyy 00:00:00", System.Globalization.CultureInfo.InvariantCulture);
string strDate = DT.ToString("yyyy-mm-dd");
    try
    {
       //code that inserts strDate to a column in Mysql DB
    }
    catch
    {
      //msg
    }

Mengapa "0000" untuk tahun ini? karena saya benar-benar berencana untuk menyimpan hanya bulan dan tanggal, tetapi menyadari bahwa saya hanya bisa menyimpannya sebagai format datetime dengan satu tahun, dan kemudian saat melihat tabel saya hanya akan menggunakan fungsi Mysql MONTH() dan DATE() digabungkan untuk melihat Bulan dan Tanggal yang saya simpan dari monthCombobox2 dan datecombobox2.

Saya juga mencoba:

Convert.ToDateTime()

Tapi tetap tidak akan berhasil.

Bagaimana cara mengurai format tanggal MMMM d,yyyy dengan benar sehingga saya dapat mengonversinya ke yyyy-mm-dd lagi dan menyimpannya sebagai format datetime dalam database? Terima kasih banyak :)

c#
0
melanie irene de ocampo 16 Maret 2019, 08:08

1 menjawab

Jawaban Terbaik

Seperti yang saya lihat, Anda menggunakan kotak teks untuk menangkap nilai bulan dan tanggal, alih-alih Anda dapat menggunakan dropdown yang akan menampilkan nama bulan tetapi mengembalikan nilai seperti 01 untuk Januari dan seterusnya. Akan mudah bagi Anda untuk memformat format tanggal. Anda tidak ingin menyimpan tahun tidak apa-apa, alih-alih mengatur 0000 Anda dapat mengatur tahun saat ini. Sekarang masalahnya Anda tidak akan dapat mengetahui hari apa tepatnya itu (misalnya Minggu, Senin, dan seterusnya).

string preConvDATE = monthCombobox2.Text + "/" + datecombobox2.Text+"/" + DateTime.Now.Year.ToString();
DateTime DT = DateTime.ParseExact(preConvDATE, "MM/dd/yyyy", System.Globalization.CultureInfo.InvariantCulture);

string strDate = DT.ToString("yyyy-MM-dd");

Saya harap ini akan menyelesaikan masalah Anda. Selamat Mengkode!

2
Rahul Raut 16 Maret 2019, 05:58