索引和长度必须指向字符串中的位置?

HAJ*_*JAJ 7 .net vb.net asp.net

我想获得前50个字母,所以我用这个subString函数得到它.

如您所见,我使用此代码来获取它:

<%# Eval("BannerDescription").ToString.Substring(1, 50)%>
Run Code Online (Sandbox Code Playgroud)

但遗憾的是它不起作用,并且出现错误信息:

索引和长度必须指向字符串中的位置.

那么有没有其他方法来解决它?

因为用户是控制数据输入的人!有时他会输入10个字母,其他时间可能是1000个字母,所以我怎么能解决这个问题呢?

我尝试了所有这些,但我们可以这样使用它:

<%# IIf(Eval("BannerDescription").ToString().Length > 49, Eval("BannerDescription").ToString().Substring(0, 49), Eval("BannerDescription"))%>

谢谢.

小智 19

也许是这样的 -

<%# Eval("BannerDescription").ToString().Substring(0, Math.Min(Eval("BannerDescription").ToString().Length, 50)) %>
Run Code Online (Sandbox Code Playgroud)