MVC.net剃刀子串在视图问题

Nea*_*alv 0 asp.net-mvc viewmodel razor

我的剃须刀和模型有问题。

在我看来,我有一个带有“物品”对象列表的模型。

因此,我做了一个@MvcHtmlString.Create(article.Intro)很棒的foreach 。

然后,当我想要该介绍的子字符串时:

@MvcHtmlString.Create(article.Intro).ToHtmlString().Substring(0, 50) 页面以无休止的循环结束(这在剃刀无法渲染某些东西时经常发生)而没有错误。

有谁知道我怎么能得到这个子字符串?

Cod*_*odo 5

Substring(0, 50)如果您的文章简介中的任何一个少于50个字符,则抛出ArgumentOutOfRangeException异常。这可能是您遇到奇怪问题的原因。

此外,由于您的数据显然尚未经过HTML编码,因此MvcHtmlString的使用是不正确的。

因此,解决方案可能是:

@article.Intro.Substring(0, Math.Min(article.Intro.Length, 50))
Run Code Online (Sandbox Code Playgroud)