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

[color=#FF0000]((Repeater)obj).[/color]为什么这么写?
 public static void DataBind(CommandType cmdType, string cmdText, OleDbParameter[] cmdParams, string objType, object obj)
    {
        DataSet ds = dat.GetDataSet(cmdType, cmdText, cmdParams);
        DataTable dt = ds.Tables[0];
        switch (objType)
        {
            case "Repeater":
                ((Repeater)obj).DataSource = dt.DefaultView;
                ((Repeater)obj).DataBind();
                break;
((Repeater)obj).为什么要这么写?有什么好处?
------解决方案--------------------
拆箱,obj是object类型,让将其转换为 Repeater 类型
------解决方案--------------------
有时候想方便一些就这样用,可以传入不同的类型,例如Repeater或者DataList,但就你这一段代码来说传入Repeater会更好,避免装箱拆箱。