如何从剃刀正确调用方法?

所以基本上我想知道如何调用方法或修改剃刀文件中的代码

我在互联网上看到了一些包含静态类的方法,但我认为这不是最好的方法。

我在 cshtml 文件中得到了这段代码:

<td>
    @Html.DisplayFor(modelItem => item.Description)
</td>

显示“新闻”类(在模型中)的所有行

我只想显示描述的前 50 个字母和后面的 3 个点,我的问题是我应该在哪里编写这个方法?在“新闻”课上?或者在另一个外部课程中?以及如何在 razor 文件中访问它?


猛跑小猪
浏览 89回答 1
1回答

喵喵时光机

您可以将该方法定义(编写)为新闻模型类的成员方法public class NewsModel{    //all your properties here    public string Description { get; set; }    public string DescriptionWithDots { get { return DoTheDots(Description); } }    //the method that writes the dots    public string DoTheDots(string input)    {        return input + "some dots ...";    }}然后在视图中调用它,不要使用 Displayfor() 并像这样调用它: <td>    @item(item.DescriptionWithDots) </td>正如 @ath 上面所说,这不是一个很好的做法(因为您现在将视图耦合到模型并跳过控制器),您希望避免调用视图中的方法。相反,您可以将其重构到您的控制器中:foreach (var item in models)        {            item.Description = item.DoTheDots(item.Description);        }        return View(models);
打开App,查看更多内容
随时随地看视频慕课网APP