Entity framework 4 EF代码首先,如何反思模型

Entity framework 4 EF代码首先,如何反思模型,entity-framework-4,ef-code-first,Entity Framework 4,Ef Code First,在EF代码中,首先使用fluent接口指定字段属性和关系。这建立了一个模型。是否有可能参考该模型并对其进行反思? 我希望能够检索给定字段(如果需要)、其数据类型、长度等。您需要访问该字段。API非常神秘。您可能需要将DataSpace.CSpace替换为DataSpace.SSpace,以获取数据库元数据 public class MyContext : DbContext { public void Test() { var objec

在EF代码中,首先使用fluent接口指定字段属性和关系。这建立了一个模型。是否有可能参考该模型并对其进行反思? 我希望能够检索给定字段(如果需要)、其数据类型、长度等。

您需要访问该字段。API非常神秘。您可能需要将
DataSpace.CSpace
替换为
DataSpace.SSpace
,以获取数据库元数据

public class MyContext : DbContext
{

    public void Test()
    {            
        var objectContext = ((IObjectContextAdapter)this).ObjectContext;

        var mdw = objectContext.MetadataWorkspace;

        var items = mdw.GetItems<EntityType>(DataSpace.CSpace);
        foreach (var i in items)
        {
            foreach (var member in i.Members)
            {
                var prop = member as EdmProperty;
                if (prop != null)
                {

                }
            }
        }
 }
公共类MyContext:DbContext
{
公开无效测试()
{            
var objectContext=((IObjectContextAdapter)this).objectContext;
var mdw=objectContext.MetadataWorkspace;
var items=mdw.GetItems(DataSpace.CSpace);
foreach(项目中的var i)
{
foreach(i.Members中的var成员)
{
var prop=作为属性的成员;
如果(prop!=null)
{
}
}
}
}