PDA

View Full Version : DateTime Problem



leila94
شنبه 28 آذر 1394, 11:31 صبح
سلام . ارور زیر رو تو پروژه دارم لطفا راهنمایی کنید ارور رو رفع کنم

Exception Details: System.Data.SqlClient.SqlException: Conversion failed when converting date and/or time from character string.

کد از قرار زیر است

protected void btn_send_Click(object sender, EventArgs e)
{
DAL dal = new DAL();
string curr_user = Session["user"].ToString();
string sql = "INSERT INTO messages (msg_sender,msg_reciver,msg_subject,msg_content,ms g_date,msg_read,msg_deleted)";
sql += " VALUES('{0}','{1}',N'{2}',N'{3}','{4}',{5},{6}) ";
sql = string.Format(sql, curr_user, txt_username.Text.Trim(), txt_subject.Text, txt_content.Text, DateTime.Now, 0, 0);
dal.connect();
dal.docommand(sql);
dal.disconnect();
Response.Redirect("outbox.aspx");
}

نوع فیلد msg_date در دیتابیس از نوع DateTime میباشد

مشکل کجاست؟

leila94
یک شنبه 29 آذر 1394, 10:34 صبح
کسی نبود کمک کنه

پیام حیاتی
یک شنبه 29 آذر 1394, 14:44 عصر
DateTime.Now.ToString()

leila94
یک شنبه 29 آذر 1394, 15:56 عصر
من قراره این اطلاعات رو بفرستم به دیتا بیس و تو کد لازم دارم تاریخ رو نه تو قسمت دیزاین صفحه... مشکلش کجاست

پیام حیاتی
یک شنبه 29 آذر 1394, 17:29 عصر
در این خط :


sql = string.Format(sql, curr_user, txt_username.Text.Trim(), txt_subject.Text, txt_content.Text, DateTime.Now, 0, 0);

DataTime.Now.ToString()

leila94
یک شنبه 29 آذر 1394, 18:50 عصر
این هم جواب نداد

پیام حیاتی
دوشنبه 30 آذر 1394, 20:50 عصر
این رو خودم تست کردم :


public void create_department()
{
string date_en = DateTime.Now.ToString("yyyy-MM-dd");
PersianCalendar p = new PersianCalendar();
string date_fa = p.GetYear(DateTime.Now) + "/" + p.GetMonth(DateTime.Now) + "/" + p.GetDayOfMonth(DateTime.Now);
string time = DateTime.Now.ToString("hh:mm:ss");
con.Open();
string Query = "insert into Department (d_name , d_date_en , d_date_fa , d_time) values ('" + txtDepart.Text + "' , '" + date_en + "' , '" + date_fa + "' , '" + time + "') ";
SqlCommand com = new SqlCommand(Query, con);
com.ExecuteNonQuery();
con.Close();
txtDepart.Text = string.Empty;
lblMessage.Visible = true;
lblMessage.Text = "بخش با موفقیت ایجاد شد";
}

leila94
سه شنبه 01 دی 1394, 19:12 عصر
ممنونم . لطفا میشه راهنمایی کنید که چطور اطلاعات رو از دیتا بیس داخل خونه ای از تیبل نمایش بدم / یا اطلاعات رو چطور در گرید ویو از دیتابیس نمایش بدم (با استفاده از ado.net )
این رو خودم تست کردم :
public void create_department() { string date_en = DateTime.Now.ToString("yyyy-MM-dd"); PersianCalendar p = new PersianCalendar(); string date_fa = p.GetYear(DateTime.Now) + "/" + p.GetMonth(DateTime.Now) + "/" + p.GetDayOfMonth(DateTime.Now); string time = DateTime.Now.ToString("hh:mm:ss"); con.Open(); string Query = "insert into Department (d_name , d_date_en , d_date_fa , d_time) values ('" + txtDepart.Text + "' , '" + date_en + "' , '" + date_fa + "' , '" + time + "') "; SqlCommand com = new SqlCommand(Query, con); com.ExecuteNonQuery(); con.Close(); txtDepart.Text = string.Empty; lblMessage.Visible = true; lblMessage.Text = "بخش با موفقیت ایجاد شد"; }