Generics 实体框架在T4上实现通用接口

Generics 实体框架在T4上实现通用接口,generics,entity-framework-5,t4,Generics,Entity Framework 5,T4,我们的T4中有以下部分 <#=codeStringGenerator.EntityClassOpening(entity)#> : IEntity 我现在如何在(默认)实体框架T4中确定主键的类型?是否有办法访问T4中的主键? 还是使用分部类的唯一选项?(我不想为此使用partials。因为每次将类添加到模型中时,开发人员都必须了解接口并在新的partials类上实现它)您可以使用KeyMembers属性 如果只有一个键,则可以检索该键并使用EdmMember类的Declarin

我们的T4中有以下部分

<#=codeStringGenerator.EntityClassOpening(entity)#> : IEntity
我现在如何在(默认)实体框架T4中确定主键的类型?是否有办法访问T4中的主键?


还是使用分部类的唯一选项?(我不想为此使用partials。因为每次将类添加到模型中时,开发人员都必须了解接口并在新的partials类上实现它)

您可以使用
KeyMembers
属性

如果只有一个键,则可以检索该键并使用EdmMember类的
DeclaringType
属性

作为一个旁注,我可能会考虑扩展<代码> EntCytCopys<代码>方法,将通用接口添加到打开声明

public IEntity<TId>
{
     TId Id { get; }
}