即使我修改了实体的名称,如何在EF中获取实体的真实表名。 我想扩展批量删除功能。
答案 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的默认值是使用与该类相同的名称。