2012-09-13 35 views
0

我已经创建了一个定制的Display For模板,主要用于我的索引文件,这样当记录显示​​在列表中时,如果某些记录也是如此,它们不会变成难看的生物冗长。我曾尝试以下操作:MVC3显示模板截断字符串

@model string 

@{ 
    string text = Html.Encode(Model??""); 
    if (text.Length >= 35) 
    { 
     text = text.Substring(0, 35)+"..."; 

    }  
    @Html.DisplayFor(model=>text) 
} 

虽然它工作正常,无需将其长度超过35或等于字符串,但如果字符串比较小这是行不通的。我已经尝试了else语句,但它也不起作用。 这是做什么的正确方法?

编辑:空字符串。在源页面文件中,两者之间没有任何内容。

+0

你能更具体一点吗? “但它不起作用”是什么意思?例外,空结果等? – nemesv

+0

空的结果,是的。没有例外或错误。 –

+0

难道是模型为空? – Jeff

回答

0

尝试一下本作模板

@model string 
@{ 
    string text = Html.Encode(Model ?? ""); 
    if (text.Length >= 35) 
    { 
     text = text.Substring(0, 35) + "..."; 
    }  
} 
@text