EF 填充不是由 EF 创建的部分类中的属性数据

发布于 2024-11-05 01:14:37 字数 98 浏览 0 评论 0原文

你好 当我检索实体的数据时,我需要获取一些额外的信息。然而,额外的属性位于不同的表中。我创建了一个具有这些额外属性的分部类。 我如何让 EF 填充额外的属性。

谢谢

HI
I need to get some extra information when i retrieve data for an entity. However the extra properties are in different tables. I created a partial class with these extra properties.
How do i get EF to populate the extra properties.

thanks

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

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

发布评论

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

评论(2

凉墨 2024-11-12 01:14:37

您必须手动填充它们。一旦属性不是映射实体的一部分(它们可能不可能是),EF 将不会对它们执行任何操作,因为它不认识它们。

另一种方法是不使用原始实体并使用一些自定义 Linq-to-entities 查询填充未映射或匿名类型。最后一个选项是使用实体模型中定义的特殊只读实体并手动创建 QueryView< /a> 在您的 EDMX 文件中。

You must populate them manually. Once properties are not part of mapped entity (which they probably cannot be) EF will not do anything with them because it doesn't know them.

Another way is not using your original entity and use some custom Linq-to-entities query filling either not mapped or anonymous type. The last option is using special read only entity defined in your entity model and manually create QueryView in your EDMX file.

心清如水 2024-11-12 01:14:37

跟进拉迪斯拉夫的帖子。最简单的方法?创建一个包含您需要的属性的模型/类,这本质上充当数据库视图,然后当您将模型发送到视图时,您可以使用 linq 并加入,然后将其转换为视图模型/对象。

var m = (your models joined).select(x=> new Model(properties....))
        .(First<Model>(), AsEnumerable<Model>(), etc);

Following up to Ladislav's post. The easiest way? Create a model/class containing the properties you need this essentially acts as a db view then when you send your model to your view you can use linq and join then cast it to the view model/object.

var m = (your models joined).select(x=> new Model(properties....))
        .(First<Model>(), AsEnumerable<Model>(), etc);
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文