EF 4.1,POCO:复杂类型的延迟加载(映射同一个表的 2 种类型)
在此示例中,是否可以为客户设置延迟加载的地址(复杂类型):实体框架 4.1 – 组件映射 ?
我需要它来优化我的 SQL 查询,这样有时我不需要加载复杂类型,有时却需要。我不想使用 DTO 处理 LINQ 的 Select()。
谢谢
Is it possible to set up Address (complex type) being lazy loaded for Customer in this example: Entity Framework 4.1 – Component mapping ?
I needed it to optimize my SQL queries, so that sometimes I do not need complex type being loaded, sometimes I do. I do not want to deal with LINQ's Select() with DTOs.
Thanks
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
这是不可能的。 EF 不支持复杂类型的延迟加载(复杂类型的属性不能为 null )。您必须重构您的应用程序并将地址用作单独的表,或者使用 表分割。在这两种情况下,您的地址都会成为具有导航属性的单独实体,您将能够控制其加载。
It is not possible. EF doesn't support lazy loading of complex types (properties of complex type cannot be null). You must either refactor your application and use address as separate table or use table splitting. In both cases your address becomes separate entity with navigation properties and you will be able to control its loading.