实体框架 - 在设计器中创建强类型投影

发布于 2024-11-01 23:53:28 字数 231 浏览 1 评论 0原文

我正在尝试通过实体框架中的设计器创建一个强类型投影实体“ProjectedPersons”。

我正在使用 POCO 类,并将它们分成单独的项目。

我不断收到错误:

错误 3027:没有为以下 EntitySet/AssociationSet - ProjectedPersons 指定映射。

我怎样才能消除这个错误。我只想使用该实体进行投影,而不是映射到数据库。

谢谢

I am trying to create a strongly typed projection entity "ProjectedPersons" via the designer in the Entity Framework.

I am using POCO classes and have seperated them out into seperate projects.

I keep getting an error:

error 3027: No mapping specified for the following EntitySet/AssociationSet - ProjectedPersons.

How can I remove this error. I only want to use the entity for projections not mapping to the database.

Thanks

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

恏ㄋ傷疤忘ㄋ疼 2024-11-08 23:53:28

如果您仅将该对象用于投影 - 我建议将其创建为复杂类型。您可以获得许多相同的功能,而无需实体固有的大量上下文开销。我相信一个实体完全期望在某些方面映射到数据库功能 - 因此你的错误。

If you are using the object only for projections - I would recommend creating it as a complex type instead. You get much of the same features without a lot of the contextual overhead that is inherent to an entity. I believe an entity is fully expecting to be mapped to a database feature in some respect - hence your error.

梦言归人 2024-11-08 23:53:28

如果要在设计器中定义投影,则必须使用 QueryView (投影查询直接在设计器中定义并映射到新的只读实体) - 该功能必须直接在 XML(MSL 部分)中手动定义,而不是在设计器中。否则,您必须在 Linq 查询中手动进行投影。对于 linq 查询,您不需要在设计器中创建实体。您可以使用设计器中未映射的任何类。

If you want to define projection in designer you must use QueryView (projection query defined directly in the designer and mapped to the new readonly entity) - that is the feature which must be manually defined directly in XML (MSL part) not in the designer. Otherwise you must do projection manually in Linq query. For linq query you don't need to create entity in the designer. You can use any class which is not mapped in the designer.

预谋 2024-11-08 23:53:28

QueryView 就是解决方案。我找到了一个有用的例子。

http://msdn.microsoft.com/en-us/magazine/ee336312.aspx

The QueryView was the solution. I found a helpful example.

http://msdn.microsoft.com/en-us/magazine/ee336312.aspx

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文