PDA

View Full Version : سوال: DisplayName در fluentapi



Iran58
چهارشنبه 25 اسفند 1395, 08:06 صبح
سلام
در Attribute ها
خصوصیت زیر را داریم

[DisplayName("id")]
public int Id { get; set; }

آیا در fluentapi این خصوصیت را داریم و باید دراین مورد از Attribute استفاده کنیم

ژیار رحیمی
چهارشنبه 25 اسفند 1395, 10:29 صبح
سلام .
در fluentAPI هم در قالب یک کلاس کافیگ که کلاس پایه EntityTypeConfigurationرا به ارث میبرد و سپس معرفی کلاس کانفیگ در DatabaseContext

//base class
public class Group
{
public int Id { get; set; }
public string GroupName { get; set; }
}
//config class
public class CngGroup : EntityTypeConfiguration<Group>
{
public CngGroup()
{
ToTable("t7", "dbo");//rename table name to t7
Property(p => p.Id).HasColumnName("c1");//rename column Id to c1
Property(p => p.GroupName).HasMaxLength(25).HasColumnName("c2");//rename column GroupName to c2
}
}




public class DatabaseContext : DbContext
{
public virtual DbSet<Group> Groups { get; set; }

protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
base.OnModelCreating(modelBuilder);


modelBuilder.Configurations.Add(new CngGroup());

}
}

Iran58
چهارشنبه 25 اسفند 1395, 10:40 صبح
سلام .
در fluentAPI هم در قالب یک کلاس کافیگ که کلاس پایه EntityTypeConfigurationرا به ارث میبرد و سپس معرفی کلاس کانفیگ در DatabaseContext

//base class
public class Group
{
public int Id { get; set; }
public string GroupName { get; set; }
}
//config class
public class CngGroup : EntityTypeConfiguration<Group>
{
public CngGroup()
{
ToTable("t7", "dbo");//rename table name to t7
Property(p => p.Id).HasColumnName("c1");//rename column Id to c1
Property(p => p.GroupName).HasMaxLength(25).HasColumnName("c2");//rename column GroupName to c2
}
}




public class DatabaseContext : DbContext
{
public virtual DbSet<Group> Groups { get; set; }

protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
base.OnModelCreating(modelBuilder);


modelBuilder.Configurations.Add(new CngGroup());

}
}


سلام منظور من DisplayName است که می خواهم در mvc معادل فارس نام جدول را نمایش بدهم

ali_md110
چهارشنبه 25 اسفند 1395, 13:35 عصر
سلام .
در fluentAPI هم در قالب یک کلاس کافیگ که کلاس پایه EntityTypeConfigurationرا به ارث میبرد و سپس معرفی کلاس کانفیگ در DatabaseContext

//base class
public class Group
{
public int Id { get; set; }
public string GroupName { get; set; }
}
//config class
public class CngGroup : EntityTypeConfiguration<Group>
{
public CngGroup()
{
ToTable("t7", "dbo");//rename table name to t7
Property(p => p.Id).HasColumnName("c1");//rename column Id to c1
Property(p => p.GroupName).HasMaxLength(25).HasColumnName("c2");//rename column GroupName to c2
}
}




public class DatabaseContext : DbContext
{
public virtual DbSet<Group> Groups { get; set; }

protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
base.OnModelCreating(modelBuilder);


modelBuilder.Configurations.Add(new CngGroup());

}
}

بهتره بجای صدا زدن مدل در سمت view از ViewModel ها استفاده کنید
DisplayName رو در سمت viewmodel بکار ببرید

ژیار رحیمی
چهارشنبه 25 اسفند 1395, 13:37 عصر
در لینک زیر توضیح داده شده است. برای DisplayName امکان پذیر نیست

http://stackoverflow.com/a/10710239/7325558