我必須完成的一個項目,但我有一個簡單的問題爲什麼我不能在實現IEnumerable的類上使用LINQ方法?
我有這樣
using System;
using System.Collections;
using System.Collections.Generic;
..
public class GroupId: XmlDataTransferObject, IEnumerable
{
private IList _groupId;
private string _nameId;
public GroupId() : this("GroupId", "Id")
{
}
public GroupId(string rootName, string nomeId) : base(rootName)
{
_groupId = new ArrayList();
_nomeId = nomeId;
}
public override bool IsNull
{
get { return _groupId.Count == 0; }
}
public int Count
{
get { return _groupId.Count; }
}
public int Add(Intero i)
{
return _groupId.Add(i);
}
public Intero this[int index]
{
get { return (Intero)_groupId[index]; }
set { _groupId[index] = value; }
}
...
public IEnumerator GetEnumerator()
{
return _groupId.GetEnumerator();
}
}
}
定義一個類,我需要找到兩個實例之間的交集GroupId對象。
爲什麼我不能在現有的方法中的LINQ相交,即使我已經宣佈的聲明,請參閱:
Using System.Linq
...
var x = _groupId1.Intersect(_groupId2);
...
錯誤1「...的GroupId」不包含'的定義相交「沒有擴展方法‘交集’接受一個類型的第一個參數」 ...的GroupId」可以找到(是否缺少using指令或程序集引用?)
我假定'使用System.Linq'爲'使用System.Linq的一個錯字;'(小寫'using'和分號最後) – ChrisF 2012-01-17 10:57:36