asp.net 日期转换!求高手来!

stringsj1=tx_sj1.Text;stringsj2=tx_sj2.Text;stringlist=tx_list.Text.Trim();stringmych... string sj1 = tx_sj1.Text;
string sj2 = tx_sj2.Text;
string list = tx_list.Text.Trim();
string mycheck = ConfigurationManager.ConnectionStrings["conn"].ToString();
SqlConnection conn = new SqlConnection(mycheck);
conn.Open();
string check = "select mingzi,feiyong,zone,shijian from log where zone like '%" + list + "%' and shijian between '" + sj1 + "' and '" + sj2 + "'";
SqlCommand cmd = new SqlCommand(check, conn);
SqlDataAdapter da = new SqlDataAdapter();
DataSet ds = new DataSet();
da.SelectCommand = cmd;
da.Fill(ds, "User");
this.GridView2.DataSource = ds;
this.GridView2.DataBind();

查询数据,填到gridview中去,但是日期格式始终未 2013/7/29 00:00:00 ,数据库中的日期类型为date,请问高手怎么把后面那几个0去掉啊?
我使用的是SQL数据库!
展开
 我来答
1804438115
高粉答主

推荐于2021-01-10 · 醉心答题,欢迎关注
知道大有可为答主
回答量:1.1万
采纳率:61%
帮助的人:3734万
展开全部
在gridview 中设置短日期格式 使用<asp:BoundField HeaderText="发表时间" DataField="PostTime" DataFormatString="{0:yyyy-MM-dd}" >时不会出现想要的显示效果, 页面显示格式为: 2006-11-1 0:00:00

必须把 HtmlEncode属性更改。设为HtmlEncode=false
完整格式应该是
<asp:BoundField HeaderText="发表时间" DataField="PostTime" HtmlEncode=false DataFormatString="{0:yyyy-MM-dd}" >
还有下面几种办法:
一、使用模板列
<asp:TemplateField>
<ItemTemplate>
<asp:Label ID="Label1" runat="server" Text='<%# Bind("datetime", "{0:HH:mm}") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
这样,在列中,它显示:10:01
二、进行简单的设置
如果要应用 formatstring ,必须将该列 Behavior-> HtmlEncode 设置为False

DataFormatString="{0:格式字符串}"

在DataFormatString 中的 {0} 表示数据本身,而在冒号后面的格式字符串代表所们希望数据显示的格式;

希望我的回答对你有帮助,若行的话请及时采纳哈
追问
你的答案不适应我这个列子,我的数据不是在gridview显示出来,而是将数据填充进去,没有办法设置列的属性!因为没有列,gridview是一个空的!
追答
天哪,你是新手吧,gridview不管是不是空的,前面能设置的属性,后台调用的时候同样也可以设置啊,前面有列绑定,后台也可设置列的样式滴.......
例如:

设置 DataGridViewCellStyle 的 Format 属性。 下面的代码示例使用列的 DefaultCellStyle 属性设置特定列的格式。UnitPrice列中的值以特定于当前区域性的货币格式显示(负值用括号括起来)。ShipDate列中的值以特定于当前区域性的短日期格式显示。 有关 Format 值的更多信息,请参见 格式化类型。

Me.dataGridView1.Columns("UnitPrice").DefaultCellStyle.Format = "c"
Me.dataGridView1.Columns("ShipDate").DefaultCellStyle.Format = "d"

this.dataGridView1.Columns["UnitPrice"].DefaultCellStyle.Format = "c";
this.dataGridView1.Columns["ShipDate"].DefaultCellStyle.Format = "d";
miaoshuhu
2013-07-30
知道答主
回答量:21
采纳率:0%
帮助的人:17.4万
展开全部
datetime.ToShortDateString();
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
潜晓星A
2013-07-30
知道答主
回答量:23
采纳率:0%
帮助的人:6万
展开全部
可以用sql中的时间转换函数CONVERT(nvarchar(25),getdate() ,23)转换成yyyy-MM-dd的日期格式
楼上的DataFormatString="{0:yyyy-MM-dd}"也可以显示出想要的格式
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
顾小松06
2013-07-30 · TA获得超过134个赞
知道小有建树答主
回答量:372
采纳率:0%
帮助的人:115万
展开全部
有三种办法解决
一、将数据库那个列的数据类型设置为char、varchar、或nvarchar等字符类型
二、在读取这个列数据的时候你格式化一下,如:format("yyyy/MM/dd")
三、在页面显示的时候格式话日期数据。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
宇宙之心眼
2013-07-30 · TA获得超过623个赞
知道小有建树答主
回答量:610
采纳率:100%
帮助的人:415万
展开全部
在绑定的时候定义好显示的Format即可。(仅只需要设置GridView的列属性)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(7)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式