如何使用LINQ与Group按条件一起加入多个表

发布于 2025-01-24 10:53:14 字数 1581 浏览 2 评论 0原文

我想获取具有内部列表详细信息的雇主列表以显示多个地址。我尝试了以下代码,并且能够获取EmpConnectionNumber,Empstate。我能够获取StoreID,StorestaffName,地址,商店和Storestafflist桌子的Contactnumber详细信息。

        List<Model.ListEmployer.Employer> employer_list = null;
        employer_List = (from a in Employer
                         join b in store on a.EmployerID equals b.EmployerID
                         join c in StoreAddress on b.StoreID equals c.StoreID
                         join d in StoreStaffList on c.storeAddressID equals d.StoreAddressID
                         where a.EmployerType == "Contract" 
                         group new { a, c } by new { a.ConnectionNumber, c.state } 
                         into grp 
                         select new Model.ListEmployer.Employer
                         {
                             EmpConnectionNumber = grp.Key.ConnectionNumber,
                             EmpState = grp.Key.State,
                             AddressHistory = new List<Model.list Employer.AddressHistory>
                            {
                                new Model.ListEmployer.AddressHistory
                                {
                                    StoreID = b.StoreID,
                                    StoreStaffName = d.StoreStaffName,
                                    Address = d.Address,
                                    ContactNumber = d.ContactNumber
                                }
                            }
                         }). ToList();

任何人都可以帮助您完成此解决方案。

我的目的是在同一雇主列表中显示多个地址详细信息

I want to fetch the list of employer with inner list details to show multiple address. I have tried the following code and can able to fetch the EmpConnectionNumber, EmpState. I could able to fetch the StoreID, StoreStaffName, Address, ContactNumber details from store and StoreStaffList tables.

        List<Model.ListEmployer.Employer> employer_list = null;
        employer_List = (from a in Employer
                         join b in store on a.EmployerID equals b.EmployerID
                         join c in StoreAddress on b.StoreID equals c.StoreID
                         join d in StoreStaffList on c.storeAddressID equals d.StoreAddressID
                         where a.EmployerType == "Contract" 
                         group new { a, c } by new { a.ConnectionNumber, c.state } 
                         into grp 
                         select new Model.ListEmployer.Employer
                         {
                             EmpConnectionNumber = grp.Key.ConnectionNumber,
                             EmpState = grp.Key.State,
                             AddressHistory = new List<Model.list Employer.AddressHistory>
                            {
                                new Model.ListEmployer.AddressHistory
                                {
                                    StoreID = b.StoreID,
                                    StoreStaffName = d.StoreStaffName,
                                    Address = d.Address,
                                    ContactNumber = d.ContactNumber
                                }
                            }
                         }). ToList();

Can anyone help on this solution to get it done.

my intension is to show multiple address details inside the same Employer list itself

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

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

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文