MVC 4 从帖子标题中获取 30 个字符

本文关键字:获取 字符 标题 MVC | 更新日期: 2023-09-27 18:33:10

>我有一个博客,想获得帖子标题的简短文本

例如("This is original post title")

("This is orig....")

我的视图助手:

@helper Render(Post post, 
               System.Web.Mvc.HtmlHelper html, 
               bool isAdmin, bool showComments) 
{
    <div class="postTitle"> <a href="@Href("~/Posts/Details/" + post.ID)">
       <h1>@post.Title.Take(34)</h1></a><br /><br />
    </div>

但我在标题位置上得到了System.Linq.Enumerable+<TakeIterator>d__3a``1[System.Char]

MVC 4 从帖子标题中获取 30 个字符

如果您需要一种防弹的方法,请使用以下扩展方法:

public static class StringExtensions {
    public static string TrimWithEllipses(this string s, int left) {
        if (s.Length < left)
            return s;
        else
            return s.Substring(0, left) + "...";
    }
}

并像这样称呼它:

@post.Title.TrimWithEllipses(34);

使用Substring

@post.Title.Substring(0, 34) + "...";

并且必须检查标题的条件有 34 个字符。

编辑:必须检查条件

@post.Title.Length >34 ?  @post.Title.Substring(0, 34) + "..." :  @post.Title;