我首先要掌握EF4代码,并且喜欢它到目前为止.但是我无法将实体映射到具有复合主键的表.
我试过的配置看起来像这样:
public SubscriptionUserConfiguration()
{
Property(u => u.SubscriptionID).IsIdentity();
Property(u => u.UserName).IsIdentity();
}
Run Code Online (Sandbox Code Playgroud)
抛出此异常:无法推断实体类型"SubscriptionUser"的密钥.
我错过了什么?
我正在使用sql server中的大型分层数据集 - 使用标准的"EntityID,ParentID"方法进行建模.整棵树中大约有25,000个节点.
我经常需要访问树的子树,然后访问挂起子树节点的相关数据.几年前,我基于表值函数构建了一个数据访问层,在给定子树的根节点的情况下,使用递归查询来获取任意子树.
我正在考虑使用Entity Framework,但我无法看到如何查询这样的分层数据.AFAIK在Linq中没有递归查询,我无法在我的实体数据模型中公开TVF.
是继续使用存储过程的唯一解决方案吗?有没有人解决过这个问题?
澄清:树中的25,000个节点我指的是层次结构数据集的大小,而不是与对象或实体框架有关.
我打算将MS实体框架用于新的网络应用程序(来自EF v2!).
那么通过向现有和未来数据库中的所有实体表添加时间戳列来提前计划是否有意义,以支持并发检查?有没有理由为什么在每个表中都有一个时间戳列是个坏主意?
请注意,重点是添加对乐观并发的支持,而不是审计.