http://community.csdn.net/Expert/TopicView.asp?id=3925757
-------------------------------
分不多了,只有拿以上我未结的100分用了~~<%# DataBinder.Eval(Container.DataItem,"Content") %>
这段绑定记录的代码是放在HTML页面文件里的
我想取Content里前80个字符该怎么办~~~~~
必须在.cs文件里做设置吧??(比如用Substring())但是我不是对单个字符串,
而是对数据集中的每个字段:Content(存在几条记录就有几个Content)我是把数据集给DataView的,那我应该是这样吗:
dv_Depth.Table.Columns[5].ToString().Substring(0,80);小弟很菜,各位大哥麻烦说详细点,最好给出关键代码,多谢~~~~

解决方案 »

  1.   

    另外要说明的是,我的环境是.net2003,oracle 数据库,字段Content为Clob类型
      

  2.   

    <%# SubString(DataBinder.Eval(Container.DataItem,"Content").ToString(),80) %>
      

  3.   

    需要先做一个重载函数SubString(string str,int i)
      

  4.   

    请问Iamalex(阿土仔)大哥
    重载函数SubString(string str,int i)  具体该怎么做呀?
      

  5.   

    我认为我还要先判断Content里有没有值 and Content的值要大于80呀~~~~
      

  6.   

    寫個public sub aa(obj)傳個參數進來..然後返回一個string,然後<%# aa(DataBinder.Eval(Container.DataItem,"Content) %>
      

  7.   

    我是把数据集给DataView的,那我应该是这样吗:
    dv_Depth.Table.Columns[5].ToString()是这样取所有Content字段内容吗?
      

  8.   

    DataTable dt= GetDataTable();
    DataView dv=dt.DefaultView;
    //绑定
    News.DataSource=dt;
    News.DataBind();/////////////////////////////
    protected string strCal(string str,int num)
    {
             Byte[] tempStr = System.Text.Encoding.Default.GetBytes(str);
    if(tempStr.Length > num)
    {
    return System.Text.Encoding.Default.GetString(tempStr,0,num);
    }
    else
    return str;
    }前台代码:
    <%# strCal(DataBinder.Eval(Container.DataItem,"Content").ToString(),80) %>说明:我现在就在用这个代码,很方便的,截取字符数目可以精确到1个字符,包括汉字和英文字母。
      

  9.   

    感谢楼上两位大哥,我先去试试,
    还请两位到http://community.csdn.net/Expert/TopicView.asp?id=3925757UP一下~~~~