使用LINQ加入三个实体

gcobani54.

成员
加入
4月26日,2021年
消息
7
编程经验
3-5
大家好

我需要一些帮助加入三个实体使用LINQ,我有一个加入,但问题我已经收到了多年来,周内和日菌属的问题是不正确的。
使用LINQ加入3个实体:
  public IList<ExtractionViewModel> GetExtractionViewModels(string year, int week)
        {

            ProductionManagementEntities db = new ProductionManagementEntities();

            
            var scheduleList = (from p in db.ProductionDays
                                join w in db.Weeks
                                // join m in db.Models somewhere here to prevent duplicate records
                                on p.WeekId equals w.WeekId

                                orderby w.Year ascending
                                orderby w.WeekNum ascending


                                where (w.WeekNum == 5)

                                select new ExtractionViewModel
                                {

                                    Day = p.ProductionDate,
                                    Week = w.WeekNum,

                                    // Model = m.Name,
                                    Year = w.Year

                                }).ToList();
            return scheduleList;
        }

 public class ExtractionViewModel
    {
        public string Year { get; set; }

        public int Week { get; set; }

        
        [DataType(DataType.Date)]
        public DateTime Day { get; set; }

       // public string VW240 { get; set; }

        public string VW250 { get; set; }

        public string VW270 { get; set; }

        public string VW2502PA { get; set; }

        public string VW270PA { get; set; }
    }
 

跳伞运动员

工作人员
加入
2019年4月6日
消息
2,956
地点
切萨皮克,va.
编程经验
10+
我看到一个实体。其他两个实体在哪里?你是怎么做加入的?

我认为这与你有关 其他线程。您不是在寻找加入操作。您正在寻找分组操作。
 

gcobani54.

成员
加入
4月26日,2021年
消息
7
编程经验
3-5
大家好

我有一个调用三个3表的方法,但现在我收到错误,说'当前上下文中的变量不存在'。如何解决这个问题?
使用C#的LINQ中的3个表:
       public IList<ExtractionViewModel> GetExtractionViewModels(string year, int week)
        {

            ProductionManagementEntities db = new ProductionManagementEntities();


            var scheduleList = (from p in db.Weeks
                                from pr in db.ProductionDays on p.WeekId = p.WeekId // Error is here does not see this in current context

                                orderby w.Year ascending
                                orderby w.WeekNum ascending


                                where (w.WeekNum == 5)

                                select new ExtractionViewModel
                                {

                                    Day = p.ProductionDate,
                                    Week = w.WeekNum,

                                    // Model = m.Name,
                                    Year = w.Year

                                }).ToList();
            return scheduleList;
        }
 

跳伞运动员

工作人员
加入
2019年4月6日
消息
2,956
地点
切萨皮克,va.
编程经验
10+
请停止打开新线程。而是回复上一个线程。通过回复您以前的线程,我们可以看到代码的演变,并有一半的机会在尝试辨别您领导的方向。 (如果您尝试解决完全新的东西,只能打开一个新线程。)

作为一个例子,通过这个线程,它不明显为什么要尝试加入。只有在用户读取您尝试构建的其他线程时才"dynamic"表,它会明确到你想要实现的目标。

合并线程......
 
Last edited:

跳伞运动员

工作人员
加入
2019年4月6日
消息
2,956
地点
切萨皮克,va.
编程经验
10+
最佳 底部