Asp.net-Mvc
在 MVC 3 中使用 AdditionalMetadata 的範例
在 asp.net MVC 3 中有一個新屬性允許我們將額外的元數據傳遞給我們的視圖,例如
[Required] [AdditionalMetadata("Tooltip", "The title of the item")] public string Title { get; set; }問題是,在我看來,我如何真正利用這些資訊?我認為它可能會將數據呈現為 html 5 數據屬性,但事實並非如此。
一個簡單的例子將不勝感激。
根據文件:
您可以使用 AdditionalMetadataAttribute 類來填充模型屬性的 ModelMetadata.AdditionalValues 字典。
…
當呈現產品視圖模型時,此元數據可用於任何顯示或編輯器模板。作為應用程序開發人員,您可以解釋元數據資訊。
所以讓我們在視圖中使用它:
<h2> @ModelMetadata.FromLambdaExpression(x => x.Title, ViewData).AdditionalValues["Tooltip"] </h2>
模板中的範例:
Object optionlabelOverride; ViewData.ModelMetadata.AdditionalValues.TryGetValue("OptionLabelText", out optionLabelOverride);您正在讀取的變數必須是一個對象,然後您可以轉換它。您在模型中設置的所有內容都可以作為 ViewData 使用。