我使用Calendar1.SelectedDate.ToShortDateString();
的日期选择器填充带有日期的文本框,
之后,我将其存储在Oracle数据库中,其查询如下所示
string query3 = "insert into leave_module1 values(:srno,:name,:desig,:tol,:compdates,:fd,:td,:nod,:da,:ds,st.nextval)";
OracleCommand cmd = new OracleCommand(query3, con);
try
{
cmd.Parameters.Add(":srno", OracleType.Number, 8).Value = DropDownList2.Text;
cmd.Parameters.Add(":name", OracleType.VarChar, 50).Value = TextBox8.Text;
cmd.Parameters.Add(":desig", OracleType.VarChar, 30).Value = TextBox10.Text;
cmd.Parameters.Add(":tol", OracleType.VarChar, 10).Value = DropDownList1.Text;
cmd.Parameters.Add(":compdates", OracleType.VarChar, 30).Value = TextBox9.Text;
cmd.Parameters.Add(":fd", OracleType.DateTime).Value = TextBox3.Text;
cmd.Parameters.Add(":td", OracleType.DateTime).Value = TextBox4.Text;
cmd.Parameters.Add(":nod", OracleType.Number, 3).Value = TextBox5.Text;
cmd.Parameters.Add(":da", OracleType.DateTime).Value = TextBox11.Text;
cmd.Parameters.Add(":ds", OracleType.DateTime).Value = TextBox7.Text;
cmd.ExecuteNonQuery();
ClientScript.RegisterStartupScript(Page.GetType(), "validation", "<script language='javascript'>alert('The Data has been added');window.location='Default2.aspx';</script>;");
}
catch
{
Label13.Visible = true;
}
但是当我在另一个页面中使用存储的日期填充GridView时,即使我没有输入一个时间戳,也会得到一个时间戳。请告诉我如何从显示屏上删除时间戳!
提前致谢
这就是我填充gridview的方式
protected void Button3_Click(object sender, EventArgs e)
{
string v = System.Configuration.ConfigurationManager.ConnectionStrings["harish"].ConnectionString;
con = new OracleConnection(v);
con.Open();
cmd = new OracleCommand("select * from leave_module1 where srno='"+DropDownList1.Text+"'", con);
dr = cmd.ExecuteReader();
GridView1.DataSource = dr;
GridView1.DataBind();
con.Close();
dr.Close();
}
答案 0 :(得分:2)
因此,您要查询数据库中的所有列,然后自动生成列。这就是显示所有列的原因。要解决此问题
很少你想使用自动生成的任何东西,因为你松开了呼叫控制来自定义行为和输出。
答案 1 :(得分:0)
在您的查询或后面的代码中格式化数据(我会在查询中)以删除时间戳并只显示数据。
答案 2 :(得分:0)
您的代码中指定的类型是DateTime,因此无论您是否指定了一个时间组件。如果Oracle有一个Date类型(我不是Oracle的人,但是我在当前项目中与Oracle接口)并且您有权进行更改,那么这是获取您所要求的最简单的方法。 否则,每次使用数据去除时间组件时,都必须指定.ToShortDateString()(或等效的东西)。
答案 3 :(得分:0)
转到GridView的“编辑列”,“字段”对话框将显示。选择要删除时间部分的日期字段,然后在DataFormatString属性中输入{0:d};单击确定。运行应用程序时,gridview列将仅显示日期部分。这对我有用。在过程中转换为Date不起作用,并且RowDataBound()处理程序上的格式化很麻烦。