2013-02-20 178 views
0

加入自動完成屬性的文本框在剃刀我可以這樣關閉自動完成的文本框:在剃刀

@Html.EditorFor(model => model.UserName, new { autocomplete = "off" }) 

是否有使用DataAnnotations,而不是在查看的方式,我可以在視圖模型指定此?

回答

0

我不認爲有一個標準的方法來處理從ViewModel屬性的HTML屬性與EditorFor擴展方法。

但是,如果您想保留DRY,您可以創建一個自定義幫助程序方法

順便說一句我不認爲將這些類型的信息(html屬性)封裝在ViewModel類中是一個好主意。

+0

雖然這不是DataAnnotations的重點嗎?或者我錯過了這一點?我以爲你想保持視圖儘可能輕,並有ViewModel處理這樣的信息。 – 2013-02-20 17:20:32

+0

是的,視圖應儘可能輕,但這並不意味着您應該將視圖特定信息移到其他地方。例如viewmodel屬性的驗證屬性是數據註解的一個很好的用法,但是你想要的是一個非常特定的視圖。 – 2013-02-20 17:26:50

+0

如果應用程序中有一些邏輯確定是否需要自動完成,那當然這不是視圖的責任,但在這裏您只是想設置一個html屬性。 Html是一個asp.net mvc應用程序的視圖,這就是爲什麼我會將它保留在視圖中的原因。 – 2013-02-20 17:29:11