如何将两个表中的数据返回模型?

时间:2019-06-13 16:02:13

标签: c# repository-pattern

我有两个表(模型):

产品表:

Id
Name
Price

颜色表:

Id
ProduceId
Color

我想在产品上显示颜色。例如:

1. green-------- Produce1
2. Red ----------Produce1
3. green --------Produce2

我在存储库中的代码:

public IEnumerable<ColorsVM> GetColors()
        {
            var _query = _context.Colors_tbl.Include(c => c.Produces_tbl).Include(d => d.produceId).AsQueryable();
            return _query;
        }

我的模型:ColorsVM:

 public class ColorsVM
    {
        public int Id { get; set; }
        public int produceId { get; set; }
        public string Color { get; set; }
        public Produces Produces { get; set; }
    }

但不起作用。

1 个答案:

答案 0 :(得分:0)

您应该映射produce表的外键,以便能够使用include加载它。

您可以通过Fluent APIData Annotations进行操作。下面的示例使用数据注释。有关更多说明,请参见以下link

public class Color
{
    public int Id { get; set; }
    public int produceId { get; set; }
    public string Color { get; set; }
    [ForeignKey("produceId ")]
    public Produce Produce { get; set; }
}