我应该如何在 .NET 2.0 中使用它...?
[DataObjectMethod(DataObjectMethodType.Select)]
public IEnumerable<OperatorField> FindByType(String type)
{
// return only selected type
return (from ce in this.OperatorFields where ce.Type == type select ce).ToList();
}
我在 3.5 项目中使用它,但现在我正在向我无法(此时)升级到 3.5 的旧项目添加新功能。
我刚刚这样做了:
[DataObjectMethod(DataObjectMethodType.Select)]
public IEnumerable<OperatorField> FindByType(String type)
{
// return only selected type
//return (from ce in this.OperatorFields where ce.Type == type select ce).ToList();
List<OperatorField> r = new List<OperatorField>();
foreach (OperatorField f in this.OperatorFields)
if (f.Type == type)
r.Add(f);
return r;
}
最佳答案
您还能使用 C# 3.0 而不是 .NET 3.5 吗?如果是这样,请保持代码不变并使用 LINQBridge ,这是为 .NET 2.0 实现的 LINQ to Objects。
否则,这样做:
[DataObjectMethod(DataObjectMethodType.Select)]
public IEnumerable<OperatorField> FindByType(String type)
{
List<OperatorField> list = new List<OperatorField>();
foreach (OperatorField ce in OperatorFields)
{
if (ce.Type == type)
{
list.Add(ce);
}
}
return list;
}
关于c# - 将 LINQ 转换为 .NET 2.0,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1232724/