如何在实体框架中获取列的默认值

7uzetpgm  于 2021-06-19  发布在  Mysql
关注(0)|答案(1)|浏览(276)

有没有办法在实体框架中获得列的默认值?我似乎无法创建 INFORMATION_SCHEMA.COLUMNS 我喜欢一张普通的table。
通常情况下 MySQLConnection ,我会这样做 SELECT COLUMN_DEFAULT FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_SCHEMA = @schema AND TABLE_NAME = 'tablename' AND COLUMN_NAME = 'columnname';

aemubtdh

aemubtdh1#

可能与实体框架类的get default sql值重复,因此我将引用:
如果您有权访问生成的dbcontext,那么可以使用dbcontext.model提供的元数据而不是反射(但是如果您使用属性设置defaultvalue,那么可以使用反射,为什么不呢!只是使用 MemberInfo.CustomAttributes )
例如:

foreach (var type in db.Model.GetEntityTypes())
{
    foreach (var property in type.GetProperties())
    {
        var defaultValue = property.Relational().DefaultValue;
    }
}

相关问题