none
不明白在.net4中将dynamic与generic collection一起使用为什么出现这样的异常,是个bug么? RRS feed

  • 问题

  • 请看代码:

     

    static void Main(string[] args) {
    	IList<dynamic> items = new List<dynamic>();
    	items.Add(3);
    	items.Add("solid");
    	dynamic i = new ExpandoObject();
    	items.Add(i); // 这里出现异常:<code><span>System.Collections.Generic.IList<object>' does not contain a definition for 'Add'</span></code>
    	Console.WriteLine();
    }
    

     


    我觉得很没有道理,items明明是个实现了IList<T>接口的集合类,是有Add这个方法的。这里dynamic对泛型有什么影响呢?



    已经确定这是个bug,https://connect.microsoft.com/VisualStudio/feedback/details/534288/ilist-dynamic-cannot-call-a-method-add-without-casting
    • 已编辑 Inside_ 2011年11月4日 9:28
    2011年11月3日 14:29

答案

  • 已经确定这是个bug,https://connect.microsoft.com/VisualStudio/feedback/details/534288/ilist-dynamic-cannot-call-a-method-add-without-casting
    • 已标记为答案 Inside_ 2011年11月4日 4:28
    • 已编辑 Inside_ 2011年11月4日 9:28
    2011年11月4日 4:28

全部回复