通常我们传入一个IEnumerable<object>的参数,而这个参数,这个参数可能是IEnumerable<值类型>也有可能是IEnumerable<引用类型>,

当时IEnumerable<引用类型>时

IEnumerable<object> values = (IEnumerable<object>)ObjectValue;
 foreach (var item in values)
{

}
                       

当IEnumerable<值类型>却会报无法转换的错误,所以通用的正确做法是:

((IEnumerable)ObjectValue).Cast<object>()

 

posted on 2013-07-02 12:18  Johnliu  阅读(335)  评论(0编辑  收藏  举报