在C#中,如何使用LINQ从IEnumerable中获取不同的值?

时间:2012-12-05 18:25:24

标签: ienumerable

我有一个IEnumerable变量,我想从中提取一个不同的值。我知道列表行中的所有条目都具有相同的值,我只需要获得该值。

该方法返回IEnumerable。

IEnumerable中的行定义为:             QuoteCovId             AdditionalInterestId             AdditionalInterestsAffiliateId             AdditionalInterestsLastName             AdditionalInterestsBusinessAddrLine1             AdditionalInterestsBusinessCity             AdditionalInterestsBusinessState             AdditionalInterestsBusinessZip

代码的Sampel:

          IadditionalInterestData = AdditionalInterestData.GetAdditionalInterests(MasterPkgID, Requestor);

          // Using linq.
          var quotes = from ai in IadditionalInterestData
                       select Distinct(ai.QuoteCovId);

          // Iterate thru to get the 1 value.
          foreach (int QuoteCovId in quotes)
          {
              quoteID = QuoteCovId;
          }

2 个答案:

答案 0 :(得分:2)

    var quoteId = AdditionalInterestData.GetAdditionalInterests(MasterPkgID, Requestor)
                  .FirstOrDefault().Select(f => f.QuoteCovId);

答案 1 :(得分:1)

但是那个方法:

AdditionalInterestData.GetAdditionalInterests(MasterPkgID,Requestor); 给我一个IEnumerable,我会在我的应用程序中进一步使用它。这就是我需要的。

那么你的建议如何仍然给我IEnumerable并给我一个恰好在集合中相同的引用值?

var quoteId = AdditionalInterestData.GetAdditionalInterests(MasterPkgID,Requestor).FirstOrDefault()。选择(f => f.QuoteCovId);

另外,我刚刚添加了你的代码行,我得到了一个错误声明。