在我的类中访问实体模型对象时遇到问题。这是我第一次使用 Visual Studio 2012,我认为可能会有一些与此问题相关的更改。不知何故,当我访问实体模型对象时,只列出了表模型。我无法访问对象的任何属性或方法。
我不确定我是否做错了什么,我正在做我以前在 Visual Studio 2010 上做的事情,没有任何问题。
在此先感谢您的帮助。
在我的类中访问实体模型对象时遇到问题。这是我第一次使用 Visual Studio 2012,我认为可能会有一些与此问题相关的更改。不知何故,当我访问实体模型对象时,只列出了表模型。我无法访问对象的任何属性或方法。
我不确定我是否做错了什么,我正在做我以前在 Visual Studio 2010 上做的事情,没有任何问题。
在此先感谢您的帮助。
VS2010 默认会生成ObjectContext
基于上下文和EntityObject
基于实体。VS2012 默认生成DbContext
基于上下文和基于 POCO 的实体。您可以通过翻转属性中的“代码生成策略”来更改默认值。在 VS2012 中,“默认”将生成ObjectContext
,EntityObject
而“无”将使用 T4 模板(默认情况下将生成DbContext
POCO)。请注意,当从“无”变为“默认”时,您可能需要删除 T4 模板(.tt 文件),否则您可能最终会得到两组实体 - 基于 POCO 和 EntityObject。
DbContext
是基于 POCO 实体构建的简化 API,ObjectContext
并且是当今使用 Entity Framework 的首选方式。您可能无法处理一些较低级别的事情,DbContext
在这种情况下,您可以ObjectContext
通过以下方式使用IObjectContextAdapter
:
((IObjectContextAdapter)dbCtx).ObjectContext