本帖最后由 liangtianheng 于 2012-11-30 13:14:08 编辑 表:table_time 有一时间列 time datetime
var ret = from p in db.table_time select p;
DropDownList1.DataSource = ret;
DropDownList1.DataTextField = "time";
DropDownList1.DataBind();
显示的是
这样的,我想让他显示 2012-12-4 这样的应该怎么写
DateTime.Parse("time".ToString()).ToString("yyyy-MM-dd") 这样写出错啊
------最佳解决方案--------------------------------------------------------
你的time1是可空类型的,你得用value才行
其实不用那么麻烦 DropDownList 有一个DataTextFormatString的属性直接格式化就可以了
------其他解决方案--------------------------------------------------------
把你用linq查出来的ret遍历一遍格式化一下。
把time列格式化成yyyy_MM_dd的格式。
复制给一个新的list再绑定
------其他解决方案--------------------------------------------------------
var ret = from p in db.table_time select new{time= p.time.ToShortDateString()};
------其他解决方案--------------------------------------------------------
你时间那个 是否是datetime类型的 是的话
string time = DateTime.Now.ToShortTimeString();
如果是string的话就截取字符串被 判断字符的长度来截取
------其他解决方案--------------------------------------------------------
估计你没做多久。"time".ToString(),这玩意肯定错啊 给你个绑定方法参照
for (int i = 2001; i < 2032; i++)
{
ListItem ji = new ListItem(i.ToString(), i.ToString());
this.DropDownList1.Items.Add(ji);
}
------其他解决方案--------------------------------------------------------
我有个办法 先截出来 再绑定
------其他解决方案--------------------------------------------------------
这么麻烦啊
------其他解决方案--------------------------------------------------------
没有这个啊ToShortDateString()
------其他解决方案--------------------------------------------------------
p.time不是datetime类型?
------其他解决方案--------------------------------------------------------
这个简单了