0

我有以下代码。

MyDataContext db = MyDataContext.Create();
            bc =
                db.BenefitCodes.Select(
                    b =>
                    new
                        {
                            BenCd = b.BenCd
                            , Description = b.BenDesc
                            , BenInterest = b.BenInterest
                            , CodeDescription = string.Format("{0} - {1}", b.BenCd, b.BenDesc)
                        });

我不得不走匿名类型路线,因为 CodeDescription 不是 benefitCode 的属性,并且客户希望它以这种方式出现在 dropDrownList 中。无论如何,我的问题是如何从该列表中选择项目的子集?我需要根据 BenInterest 属性选择项目。

所以这会返回 IEnumerable,所以我试图走这条路,这就是我卡住的地方。我的意图是构建一个新的 IEnumerable 列表并为其设置一个下拉数据源。

 IEnumerator enumerator = BenefitCodes.GetEnumerator(); 
        while(enumerator.MoveNext())
        {
              //What can I do here to return items based on BenInterest? 
              //I basically either want items that have a BenInterest of 'E'
              // or items that DO NOT have a BenInterest of 'E'
              // this is based on the value of a radioButtonList on the page
        }

那么如何创建一个仅包含所需项目的相同匿名类型的新 Enumerable。

谢谢你的帮助。干杯,~ck

4

1 回答 1

3

您可以使用:

var newCollection = bc.Where( e => e.BenInterest == 'E' );
于 2009-08-20T19:05:21.930 回答