2013-05-20 141 views
7

我遇到了一個在Dynamic Data Web應用程序中自定義DataAnnotations的場景。這是之情況:動態更改動態數據項目中的數據註釋

[Display(Name="DispName")] 
public string DName{get;set;} 

而是硬編碼名稱=「DispName」爲顯示DataAnnotation的,我希望獲取從數據庫中的一些價值,適合INT Name屬性。像:

[Display(Name=SomeValueFromDB)]  
public string DName{get;set;} 

有什麼辦法來顯示從數據庫,而不是它的硬編碼值顯示DataAnnotation的名稱屬性?

另外,如何根據表值更改ScaffoldColumn(True/False)

我可以使用T4模板來做到這一點嗎?

在此先感謝。

回答

1

一般來說不是,屬性被編譯併成爲CIL元數據的一部分。爲了調查這是一個很好的SO線程,在這個主題上有一些細節。 Is it possible to modify the attribute of a property at runtime?

就我個人而言,我認爲您應該考慮以另一種方式將標籤傳遞到前端,以便您可以靈活使用。例如包含標籤和值的模型。