我有以下扩展方法:扩展方法没有发现(未装配参考问题)
public static EntitySet<T> ToEntitySetFromInterface<T, U>(this IList<U> source)
where T : class, U
{
var es = new EntitySet<T>();
IEnumerator<U> ie = source.GetEnumerator();
while (ie.MoveNext())
{
es.Add((T)ie.Current);
}
return es;
}
和Im尝试如下使用它:
List<IItemMovement> p = new List<IItemMovement>();
EntitySet<ItemMovement> ims = p.ToEntitySetFromInterface<ItemMovement, IItemMovement>();
其中ItemMovement实现IItemMovement。编译器会抱怨:
“System.Collections.Generic.List”不包含一个 定义为“ToEntitySetFromInterface”和没有扩展方法 “ToEntitySetFromInterface”接受 类型的第一参数“System.Collections.Generic 。列表'可以找到( 你缺少一个使用指令或程序集参考吗?)
不,我不缺少一个参考。如果我只是输入包含它弹出的方法的静态类的名称,那么扩展方法也是如此。 Thnx
im not sure List list = new List ();会编译? –
AaronHS
2012-03-06 11:30:18
否则这个代码适用于我(带有嘲弄的ItemMovement和IItemMovement – AaronHS 2012-03-06 11:32:24
我相信这个问题与intellisense无关,如果你不能编译它,那么它几乎不会是intellisense的错误 – demoncodemonkey 2012-03-06 11:45:48