即使我修改了实体的名称,如何在EF中获取实体的真实表名

时间:2012-05-17 03:34:05

标签: entity-framework entity-framework-4

即使我修改了实体的名称,如何在EF中获取实体的真实表名。 我想扩展批量删除功能。

1 个答案:

答案 0 :(得分:0)

我认为这样的事情应该有效:

string GetTableName()
{
    Type t = this.GetType();
    var tableAttributes = t.GetCustomAttributes(typeof(TableAttribute), true);
    if (tableAttributes.Length == 0)
        return t.Name;
    else
        return ((TableAttribute)tableAttributes[0]).Name;
}

基本上,如果该类标有TableAttribute,则可以从中获取真实的表名。如果未标记,则EF的默​​认值是使用与该类相同的名称。