日期:2014-05-17  浏览次数:20453 次

DropDownList1绑定时间列
本帖最后由 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") 这样写出错啊
------最佳解决方案--------------------
引用:
引用:var ret = from p in db.table_time select new{time= p.time.ToShortDateString()};


没有这个啊ToShortDateString()

你的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);

------其他解决方案--------------------
我有个办法  先截出来 再绑定
------其他解决方案--------------------
引用:
把你用linq查出来的ret遍历一遍格式化一下。
把time列格式化成yyyy_MM_dd的格式。
复制给一个新的list再绑定

这么麻烦啊
------其他解决方案--------------------
引用:
var ret = from p in db.table_time select new{time= p.time.ToShortDateString()};



没有这个啊ToShortDateString()
------其他解决方案--------------------
p.time不是datetime类型?

------其他解决方案--------------------
引用:
引用:
引用:var ret = from p in db.table_time select new{time= p.time.ToShortDateString()};


没有这个啊ToShortDateString()
你的time1是可空类型的,你得用value才行

其实不用那么麻烦 DropDow……

这个简单了