来自映射api的EF Core列名

entity-framework-core

在EF 6.1中引入了映射API,最终我们可以访问表名和列名。获取表名是EF Core中一个非常好的变化,但我还没有发现如何获取列名。

对于这里感兴趣的人,我是如何得到最新版本的表名(RC1)

context.Model.FindEntityType(typeof(T)).SqlServer().TableName

获取列名的当前方法是什么,或者这还没有?

一般承认的答案

var columnNames = ctx.Model.FindEntityType(typeof (T))
                           .GetProperties().Select(x => x.SqlServer().ColumnName)
                           .ToList();

var columnNames = ctx.Model.FindEntityType(typeof (T))
                           .GetProperties().Select(x => x.Relational().ColumnName)
                           .ToList();

热门答案

只要数据存储是关系型的,此版本不假定SqlServer并且可以与Npgsql提供程序一起使用。

var columnNames = dbContext.Model.FindEntityType(typeof(T))
                  .GetProperties().Select(x => x.Relational().ColumnName);


Related

许可下: CC-BY-SA with attribution
不隶属于 Stack Overflow
许可下: CC-BY-SA with attribution
不隶属于 Stack Overflow