2016-02-09 108 views
0

我需要知道有關實體,表,映射,鍵等信息DbContext的給定實例。在實體框架6我在寫edmx這樣的:實體框架核心 - 獲取DbContext數據模型

System.Data.Entity.Infrastructure.EdmxWriter.WriteEdmx(dbContext, xmlWriter); 

然後我用來建立自己的數據模型(這需要從不同來源支持加載數據的工具)。如何獲得新的EF Core(之前的EF 7)的此類信息?我可以使用Reflection,但這會給我只有conceptual schema,而我也需要mappings and storage schema。我一直在尋找EF源代碼,但似乎沒有找到任何可存儲所有必需數據的對象。

回答

2

這應該讓你開始

using (var ctx = new TestContext()) 
{ 
    var entityType = ctx.Model.FindEntityType(typeof (Entity_Basic)); 
    var tableName = entityType.SqlServer().TableName; 
    var columnName = entityType.GetProperties().ToList()[0].SqlServer().ColumnName; 
}