【发布时间】:2011-08-27 21:54:50
【问题描述】:
我使用的是 EF 4.1 Code First,带有 Fluent 映射:
实体:
public class MyClass
{
public int MyClassID { get; set; }
public string Name { get; set; }
}
映射:
public class MyClassMapping: EntityTypeConfiguration<MyClass>
{
public MyClassMapping()
{
Map(t => t.ToTable("MyClass"))
.HasKey(t => t.MyClassID);
Property(t => t.MyClassID)
.IsRequired()
.HasDatabaseGeneratedOption(DatabaseGeneratedOption.Identity);
Property(t => t.Name)
.IsRequired()
.HasMaxLength(200);
}
}
鉴于此配置(以及其他实体的许多类似声明/映射),如果我知道实体类的类型(即MyClass),是否可以获得关键属性的类型和名称实体类? - 由于我已经在映射中定义了它,我是否应该能够从 IDbSet 的 MyClass 或我的 DbContext 派生的实体容器中取回它?
我不想仅仅假设 keyname = classname + "ID" 或类似的 - 它是如何从映射中正确完成的?
【问题讨论】:
标签: c# entity-framework-4.1 ef-code-first