【发布时间】:2013-12-19 11:11:01
【问题描述】:
我想根据 EntityKey 查询我的数据库,是否有内置(或更简单的方法)来执行此操作?
我目前的做法是这样的:
using (var context = new DbContext())
{
context.DataBase.SqlQuery<TestTable>("select * from @p0 where @p1 = @p2", EntityKey.EntitySetName, EntityKey.EntityKeyValues[0].Name, EntityKey.EntityKeyValues[0].Value);
}
(此解决方案目前存在问题,EntitySetName 不是 TableName,我需要从 MetaData 中获取 TableName,与 Id 的名称相同,也可能与数据库不同)
或者有没有办法用 LINQ 做到这一点? (我更喜欢,因为我不需要手动翻译)
【问题讨论】:
-
Ur Q 不是很清楚..你遇到什么错误?
-
@Rupesh:我绝对没有错误,我只想知道是否有办法在 EntityKey 属性的帮助下查询数据库,您在答案中发布的链接是否为我使用,因为我已经在使用 EntityFramework。我的问题是如何做到这一点,只有 EntityKey。
-
有什么原因不能使用
context.Set<TestTable>().Find(EntityKey.EntityKeyValues[0].Value)? -
@SteveRuble 不是,这就是我问如何实现它的原因。 :)
标签: c# entity-framework entity-framework-5 entitykey