ASP.NET MVC字符串格式化c# - 显示100个字符 - 修剪/剪切字符串的20个字符

r.r*_*r.r 0 c# asp.net string asp.net-mvc

我遇到了一个小麻烦.我想只显示一个字符串的一部分,例如:

相反:"Lorem ipsum dolor sit amet,consetetur sadipscing elitr,sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat,sed diam voluptua."

只是一个:"Lorem ipsum dolor sit amet,consetetur sadipscing ......"

我可以使用哪种方法来做到这一点?

感谢您的帮助和照顾,Ragims

Sim*_*ele 19

我使用字符串扩展方法来执行此操作.无论在何处保存辅助方法,都可以将这样的方法添加到静态类中:

    /// <summary>
    /// Trim the front of a string and replace with "..." if it's longer than a certain length.
    /// </summary>
    /// <param name="value">String this extends.</param>
    /// <param name="maxLength">Maximum length.</param>
    /// <returns>Ellipsis shortened string.</returns>
    public static string TrimFrontIfLongerThan(this string value, int maxLength)
    {
        if (value.Length > maxLength)
        {
            return "..." + value.Substring(value.Length - (maxLength - 3));
        }

        return value;
    }
Run Code Online (Sandbox Code Playgroud)

这将修剪字符串的前部,如果字符串的开头更重要,则很容易修复.然后在您的视图中使用它:

Here is my trimmed string: <%: Model.MyValue.TrimFrontIfLongerThan(20) %>
Run Code Online (Sandbox Code Playgroud)

希望有所帮助!