首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将按id的集合与linq连接

将按id的集合与linq连接
EN

Stack Overflow用户
提问于 2017-06-15 21:47:04
回答 1查看 1.3K关注 0票数 1

我有一个对象集合

代码语言:javascript
复制
var myData = new[]
{
    new {
        ID = "1285",
        COUNT = 45
    },
    new {
        ID = "1286",
        COUNT = 156
    },
    new {
        ID = "1287",
        COUNT = 965
    }
};

我的另一个集合来自另一个数据源,如下所示:

代码语言:javascript
复制
var incomingData = new[]
{
    new {
        ID = "1285",
        LOCATION = "City-1"
    },
    new {
        ID = "1286",
        LOCATION = "City-2"
    },
    new {
        ID = "1287",
        LOCATION = "City-3"
    }
};

我想通过Id更改具有COUNT属性的传入数据。

代码语言:javascript
复制
var NewData = new[]
{
    new {
        ID = "1285",
        LOCATION = "City-1",
        COUNT = 45
    },
    new {
        ID = "1286",
        LOCATION = "City-2",
        COUNT = 156
    },
    new {
        ID = "1287",
        LOCATION = "City-3",
        COUNT = 965
    }
};

我如何使用linq labda函数来实现这一点。我不想使用foreach循环。(myDataincomingData集合长度可能不同)

EN

回答 1

Stack Overflow用户

发布于 2017-06-15 21:51:29

只需像这样使用普通的join语句:

代码语言:javascript
复制
var result= 
    (
        from data in myData
        join inData in incomingData
            on data.ID equals inData.ID
        select new
        {
            data.ID,
            inData.LOCATION,
            data.COUNT
        }
    ).ToList();

容易,简单,易读

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44569226

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档