|
|
|
ฟ้อง Error String was not recognized as a valid DateTime. ค่ะ asp.net c# |
|
|
|
|
|
|
|
โดย default ของ SQL Server ที่เคยทำมาผมใช้ format yyyy-MM-DD (ปีค.ศ.นะครับ)
ลองหาวิธีจัดการตัวแปร to_date1 ให้ได้ format ตามนั้นดูครับคิดว่าน่าผ่านได้ครับ
|
|
|
|
|
Date :
2011-04-25 10:35:43 |
By :
mi16 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
มี วิธีอื่นอีกไหมค่ะ
คือ type ของ Date ใน ดาต้าเบส เป็น DateTime 1/1/2554 0:00:00
เวลาค้นหา ต้องการหาแค่ 1/1/2554 เป็น วัน/เดือน/ปี โดยปี เป็น พ.ศ. ค่ะ
|
|
|
|
|
Date :
2011-04-25 10:48:40 |
By :
mushroomsn |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Code (C#)
DateTime date1 = Convert.ToDateTime(TextBox1.Text);
sqlProduct = " SELECT id,name,note,Dpep FROM pep WHERE Dpep = convert(datetime, '" + string.Format("{0}/{1}/{2}", date1.Month, date1.Day, date1.Year) + "', 101)" ;
ลองตามนี้ดูก็ได้ครับ
ผมใช้เป็นตัวแปร DateTime ชื่อ date1 และเอาค่า Year , Month , Day มาต่อตาม Format mm/dd/yyyy ซึ่งจะต้องเป็น ค.ศ. ครับ
ผมจึงใช้ date1.Year ซึ่งจะได้เป็น ค.ศ.
จากนั้นใช้ sql statement จะเรียกใช้ function convert ของ sql server convert อีกรอบตาม format ที่ตรงกันครับ
อ้างอิงจาก http://www.sqlusa.com/bestpractices/datetimeconversion/ เพื่อดูวิธีการ convert ในแต่ละแบบครับ
ปล. จริงๆมันมีอีกวิธีคือส่งค่า parameter ผ่าน SqlCommand แต่มันจะแตกต่างจาก code เดิมเกินไปเลยไม่ได้กล่าวถึงนะครับ
|
|
|
|
|
Date :
2011-04-25 12:10:49 |
By :
mi16 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 03
|