Asp.net-Mvc-3

ASP.Net MVC 3 Razor 連接字元串

  • August 7, 2020

我的 ASP.Net MVC 3 Razor 視圖中有以下內容

@foreach (var item in Model.FormNotes) {
<tr>
   <td>
       @Html.DisplayFor(modelItem => item.User.firstName)
   </td>
</tr>
}

哪個工作正常,但是,我想連接字元串以顯示名字和姓氏,但是當我嘗試這樣做時

<td>
 @Html.DisplayFor(modelItem => item.User.firstName + @item.User.lastName)
</td>

我收到以下錯誤

模板只能與欄位訪問、屬性訪問、一維數組索引或單參數自定義索引器表達式一起使用

有誰知道如何在 Razor 視圖中連接字元串?

謝謝大家。

編輯

我的 Razor View 接受一個看起來像這樣的 ViewModel

public class ViewModelFormNoteList
{
   public IList<Note> FormNotes { get; set; }
}

我想按照 Roy 的建議將 FullName 屬性放在這裡,但是,我不知道如何讓它工作???

DisplayFor需要一個屬性來映射,所以串聯是不可能的。您可能會在模型上公開一個只讀屬性 FullName,然後返回串聯:

public string FullName
{
  get
  {
     return User.FirstName + " " + User.LastName;
  }
}

然後在你的DisplayFor.

@Html.DisplayFor(modelItem => modelItem.FullName);
@Html.DisplayFor(modelItem => item.FirstName) @Html.DisplayFor(modelItem => item.LastName)

引用自:https://stackoverflow.com/questions/10797795