C# Entity-Framework : How can I combine a . 查找并包含模型对象?

标签 c# asp.net-mvc entity-framework

我正在做 mvcmusicstore 实践教程。在为相册管理器(添加删除编辑)创建脚手架时,我注意到了一些事情。

我想优雅地编写代码,所以我正在寻找一种干净的方式来编写它。

仅供引用,我正在使商店更通用:

相册 = 项目

流派 = 类别

艺术家 = 品牌

下面是检索索引的方式(由 MVC 生成):

var items = db.Items.Include(i => i.Category).Include(i => i.Brand);

以下是如何检索要删除的项目:

Item item = db.Items.Find(id);

第一个返回所有项目并填充项目模型中的类别和品牌模型。第二个,不填充类别和品牌。

我如何编写第二个来查找并填充里面的内容(最好在 1 行中)...理论上 - 类似于:

Item item = db.Items.Find(id).Include(i => i.Category).Include(i => i.Brand);

最佳答案

您可以先使用 Include(),然后从结果查询中检索单个对象:

Item item = db.Items
              .Include(i => i.Category)
              .Include(i => i.Brand)
              .FirstOrDefault(x => x.ItemId == id);

关于C# Entity-Framework : How can I combine a . 查找并包含模型对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7348663/

相关文章:

C# 创建和使用函数

c# - 在 WCF 或 WebAPI 方法 (IIS) 中返回 "Task<int>"而不是 "int"的好处

javascript - 如何在每次键入时将在文本框中键入的值传递到 Controller ,而无需使用提交按钮。

c# - 如何继承DbContext类

c# - orderby 无法使用 LINQ 获取子查询中的前 1 个结果

c# - 构建 Xamarin 页面时获取数据的最佳方式是什么?

C# 控制台应用程序 httpWebRequest

jquery - MVC 4 - 更新部分 View

asp.net-mvc - Azure Web 角色并不总是显示移动 View ?

c# - LINQ Where 语句用 OR 连接