2013-01-17 42 views
1

我想重寫下面兩個MVC 3 Razor擴展生成的標題。我想顯示「Is Enabled」而不是「IsEnabled」。MVC剃刀改寫屬性標題

@Html.DisplayFor(modelItem => item.IsEnabled) 

@Html.LabelFor(model => model.IsEnabled) 

我的屬性如下裝飾:

[DisplayName("Is Enabled")] 
public bool IsEnabled { get; set; } 

LabelFor該方法似乎尊重DisplayName屬性;它工作得很好。但是,DisplayFor方法不會拿起DisplayName屬性。

有關我如何重寫Razor方法的屬性標題的任何想法?

謝謝!

回答

2

你混合(屬性或名稱,它的值)的標題和內容

DisplayFor是針對內容(實例的屬性值),因此顯示true或false(或選中複選框或不)的布爾值。

LabelFor是...標籤(標題的種類),所以它將顯示屬性的名稱(IsEnabled,如果您沒有放置DisplayName屬性)以及DisplayName屬性的值(如果存在)

+0

感謝您的快速響應和澄清。我對MVC/Razor非常陌生。 –

+0

@JohnRussell不客氣,我們都在學習每一天;) –