Visual Studio 2012中的实体模型问题

时间:2013-07-09 09:28:33

标签: c# visual-studio-2010 entity-framework visual-studio-2012

我在访问类中的Entity Model对象时遇到问题。这是我第一次使用Visual Studio 2012,我认为可能会有一些与此问题相关的更改。不知何故,当我访问实体模型对象时,只列出了表模型。我无法访问该对象的任何属性或方法。

Intellisense example

我不确定我是否做错了什么,我正在做我曾经在Visual Studio 2010上做的事情而没有任何问题。

提前感谢您的帮助。

1 个答案:

答案 0 :(得分:2)

VS2010默认会生成基于ObjectContext的上下文和基于EntityObject的实体。 VS2012默认生成基于DbContext的上下文和基于POCO的实体。您可以通过在属性中翻转“代码生成策略”来更改默认值。在VS2012中,“默认”将生成ObjectContextEntityObject,而“无”将使用T4模板(默认情况下将生成DbContext和POCO)。请注意,当从“无”转到“默认”时,您可能需要删除T4模板(.tt文件),或者最终可能会有两组实体 - 基于POCO和EntityObject。

DbContext是基于ObjectContext构建的简化API,与POCO实体一起,是目前使用Entity Framework的首选方式。您可能无法使用DbContext执行某些较低级别的操作,在这种情况下,您可以使用ObjectContext这样下拉到IObjectContextAdapter

((IObjectContextAdapter)dbCtx).ObjectContext