[英]asp.net mvc 3 T4 View Template access property meta data (DisplayName, Description, UIHint) etc
[英]Retrieving [DisplayName] DataAnnotation in T4 template
我已經在VS2010中下載了MVCScaffolding nuget軟件包。 我試圖從我的模型中檢索[DisplayName數據注釋,以便在index.cs.t4模板中使用它。
本頁OneToMany Relationships向我展示了如何修改索引模板,以便提供一個鏈接,該鏈接會將我帶到我的子對象的控制器索引。 在這種情況下,從電子郵件到電子郵件收件人。 問題是我已經將我的控制器稱為emailcontroller和emailrecipientscontroller,而不是它們的描述性較低的表名,無論如何我都希望將它們隱藏起來。 我已經用這個顯示名(電子郵件收件人)數據注釋同樣地裝飾了t4模板使用的元數據對象(tbl_My_unwieldytablename_emailMetadata),我希望我可以修改模板以替換關系名稱以使用顯示名,即我的控制器名稱,即
[MetadataType(typeof(tbl_My_unwieldytablename_emailMetadata))]
public partial class tbl_My_unwieldytablename_email
{
internal sealed class tbl_My_unwieldytablename_emailMetadata
{
[ScaffoldColumn(false)]
[Required(ErrorMessage="id is required")]
public Int32 id { get; set; }
[DataType(DataType.Date)]
public DateTime send_date { get; set; }
[StringLength(255)]
public String title { get; set; }
[DataType(DataType.MultilineText)]
public String message { get; set; }
[StringLength(50)]
public String author { get; set; }
[StringLength(80)]
[DataType(DataType.EmailAddress)]
public String author_email { get; set; }
[DataType(DataType.MultilineText)]
public String attachment { get; set; }
[DataType(DataType.Date)]
public DateTime created_date { get; set; }
public Int32 batches { get; set; }
[DataType(DataType.Date)]
public DateTime complete_date { get; set; }
[DisplayName("emailrecipients")]
public EntityCollection<tbl_My_unwieldytablename_email_recipients> tbl_My_unwieldytablename_email_recipients { get; set; }
}
干杯蒂姆
[Table("tbl_My_unwieldytablename_email")]
Public Class Email
[Table("tbl_My_unwieldytablename_email_recipients")]
Public Class EmailRecipients
應該將您的類映射到數據庫表
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.