6
是否有使用原因最好的其中之一:直接Model.Property與HTML輔助DisplayFor在剃刀
@Model.Property
@Html.DisplayFor(m => m.Property)
我從來沒有在一個與其他工作不同十字路口到達。
有什麼區別?
是否有使用原因最好的其中之一:直接Model.Property與HTML輔助DisplayFor在剃刀
@Model.Property
@Html.DisplayFor(m => m.Property)
我從來沒有在一個與其他工作不同十字路口到達。
有什麼區別?
Model.Property
- 正如你所知道的 - 只會寫出有問題的財產的價值。另一方面,Html.DisplayFor(m => m.Property)
將調用顯示模板,該模板可以渲染出屬性值周圍的其他標記。
例如,可以定義一個顯示模板,如下所示:
@model String
<div class="property-wrapper">
<p>@Model.Property</p>
</div>
周圍的div將圍繞屬性的值當使用呈現DisplayFor
(如果選擇了顯示的模板,這通常意味着它具有與該屬性類型相匹配的文件名,在該屬性的UIHint
屬性中指定,或者在調用DisplayFor
時明確指定
您還可以訪問顯示模板中的模型元數據,這意味着您可以執行類似這個:
<div class="property-label">
@Html.DisplayNameForModel()
</div>
<div class="property-value">
@Model.Property
</div>
顯示模板爲您提供了大量的靈活性和可重用性。探索這個最好的方法是開始構建自定義模板並查看需要的位置。