我如何得到一个任意实体存储在上下文与实体框架



我正在使用实体框架。我只需要从上下文中获得一个任意实体,这样我就可以使用反射来查看其属性。我不需要任何特定的实体,任何一个都可以。我的调用应该是这样的:

Entity oldEntity = (Entity)_context.Set(newEntity.GetType()).

和一些方法应该在最后一个之后。但我没有看到任何工作(找到是我最好的选择,但我不能使用它,因为我不知道任何实体的ID)。

编辑:

我忘了提到我传入的newEntity是用CodeDom类生成的,所以newEntity将与上下文中的实体相同,但它可能具有不同的属性,这就是为什么我必须获得一个示例"旧"实体来比较其属性。为了澄清这一点,假设我存储了一个Person实体,其属性为:

  • 名字

然后我想添加一个新属性,比如Age。我这样做的方式是通过生成一个新的Person实体类,其中CodeDom带有Age作为附加属性。我已经更新了磁盘上的实体类,所以我可以用额外的字段创建一个新的实体,但是我的SQL表没有更新。

你不需要一个类的实际实例来查看它的属性。

你可以使用typeof(…)就像typeof(Entity).GetProperties()

最新更新