1

我正在尝试获取实体的复杂属性,如下所示:

实体来自

typeMapper.GetItemsToGenerate<EntityType>(itemCollection)

我正在获取其他属性,如下所示:

var propertiesWithDefaultValues = typeMapper.GetPropertiesWithDefaultValues(entity);
var collectionNavigationProperties = typeMapper.GetCollectionNavigationProperties(entity);
var complexProperties = typeMapper.GetComplexProperties(entity);
var navigationProperties = typeMapper.GetNavigationProperties(entity);
var simpleProperties = typeMapper.GetSimpleProperties(entity);

所以在这个复杂的属性应该从:

public IEnumerable<EdmProperty> GetComplexProperties(EntityType type)
{
    return type.Properties.Where(p => p.TypeUsage.EdmType is ComplexType && p.DeclaringType == type);
}

但他们都没有被退回。

但是我确实从以下位置获取导航属性:

public IEnumerable<NavigationProperty> GetNavigationProperties(EntityType type)
{
    return type.NavigationProperties.Where(np => np.DeclaringType == type);
}

但导航属性也包含集合属性。

我在这里做错什么了吗?

4

0 回答 0