一个数据表有一个MovieContent字段,就是"电影内容介绍"的意思.我把它读到一个DataList的模版里.因为外观要求统一,我只显示该字段的前面50个字.可MovieContent有些字段的内容不到50个字.我用下面的语句的时候出错:<tr>
<td align="left">
<%#DataBinder.Eval(Container.DataItem,"MovieContent").ToString().Substring(0,50)+"....."%>
</td>
</tr>因为有些不到50个字.这样一来,就抛出导常:
索引和长度必须引用该字符串内的位置。
参数名: length 大家说说,有什么好的思路吗?还有就是,代码后置类的文件中,(.aspx.cs页面)如何和.aspx页面中相互实在变量共享(除了使用Session)???欢迎大家讨论.
<td align="left">
<%#DataBinder.Eval(Container.DataItem,"MovieContent").ToString().Substring(0,50)+"....."%>
</td>
</tr>因为有些不到50个字.这样一来,就抛出导常:
索引和长度必须引用该字符串内的位置。
参数名: length 大家说说,有什么好的思路吗?还有就是,代码后置类的文件中,(.aspx.cs页面)如何和.aspx页面中相互实在变量共享(除了使用Session)???欢迎大家讨论.
解决方案 »
- 大企业开发ASP.NET网页,都不用控件
- asp.net调用prolog程序
- 极有挑战性的问题: 在一个网页里如何获取用户打开打开的上一个网页网址
- 正则式初级问题:如何去除某匹配段?
- ASP.NET发送Email取回密码
- 挺急的。regularexpressionvalidator控件怎么不能控制文本框中输入的是数值呢?请教大家啊。在线等
- 启动MSDN Library后,目录栏能正常显示,但右边总是提示无法显示网页内容。请问如何解决?
- 采集不到阿里巴巴的页面源代码
- 我web.config 让他显示404错误,不管用
- Lucene.net 3.0.3版本千万级数据检索提高速度
- 这样的功能可以实现吗?
- 奇怪错误! 并不包含对“EOF”的定义
如
static string cutstring(string input ,int intLen)
{
strInput=input.Trim();
byte[] myByte = System.Text.Encoding.Default.GetBytes(strInput);
if(myByte.Length>intLen)
{
//截取操作
string resultStr="";
for(int i=0;i<strInput.Length;i++)
{
byte[] tempByte=System.Text.Encoding.Default.GetBytes(resultStr);
if(tempByte.Length<intLen-4)
{
resultStr+=strInput.Substring(i,1);
}
else
{
break;
}
}
return resultStr+"…";
}
else
{
return strInput;
}
}
然后页面显示时调用该函数
cutstring(databinder.eval(container,"dataitem.***").tostring(),50)
<script language="C#" runat="server">
string TT(string result)
{
if(result.length>50)
return result.SubString(0,49)
else
return result
}
</script>把这句改为
<%#TT(DataBinder.Eval(Container.DataItem,"MovieContent").ToString())+"....."%>kittenlpf(Kitten) 的方法不错,呵呵.当时没有想到.第二个问题我举个例子:
有一个页面文件,文件名是First.aspx 它的后置代码是First.aspx.cs 现在,在First.aspx.cs的
Page_Load()事件中,有一个变量,比如string MemberName="Jemmey",那如何在页面文件First.aspx中取得这个变量的值???