第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何從剃刀正確調(diào)用方法?

如何從剃刀正確調(diào)用方法?

C#
猛跑小豬 2023-07-22 16:26:36
所以基本上我想知道如何調(diào)用方法或修改剃刀文件中的代碼我在互聯(lián)網(wǎng)上看到了一些包含靜態(tài)類的方法,但我認(rèn)為這不是最好的方法。我在 cshtml 文件中得到了這段代碼:<td>     @Html.DisplayFor(modelItem => item.Description) </td>顯示“新聞”類(在模型中)的所有行我只想顯示描述的前 50 個字母和后面的 3 個點(diǎn),我的問題是我應(yīng)該在哪里編寫這個方法?在“新聞”課上?或者在另一個外部課程中?以及如何在 razor 文件中訪問它?
查看完整描述

1 回答

?
喵喵時(shí)光機(jī)

TA貢獻(xiàn)1846條經(jīng)驗(yàn) 獲得超7個贊

您可以將該方法定義(編寫)為新聞模型類的成員方法


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 ...";

? ? }

}

然后在視圖中調(diào)用它,不要使用 Displayfor() 并像這樣調(diào)用它:


?<td>

? ? @item(item.DescriptionWithDots)

?</td>

正如 @ath 上面所說,這不是一個很好的做法(因?yàn)槟F(xiàn)在將視圖耦合到模型并跳過控制器),您希望避免調(diào)用視圖中的方法。

相反,您可以將其重構(gòu)到您的控制器中:


foreach (var item in models)

? ? ? ? {

? ? ? ? ? ? item.Description = item.DoTheDots(item.Description);

? ? ? ? }

? ? ? ? return View(models);


查看完整回答
反對 回復(fù) 2023-07-22
  • 1 回答
  • 0 關(guān)注
  • 113 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號