“yield”的使用???不明白???
yield”的作用是什么???   查了MSDN没看出问题。。。 实例:      var datasource = GetEnumerable(dicList).ToDataSource();
   public IEnumerable<IDictionary> GetEnumerable(List<Dictionary<string, string>> SourceList)
         {
             for (int i = 0; i < SourceList.Count; i++)
             {
                 var dict = new Dictionary<string, string>();
                 dict = SourceList[i];
                 yield return dict;
问题一:“yield”的作用是什么??? 问题二:循环为“dict”执行扩展方法“ToDataSource”,是吗???问题 三:“GetEnumerable(dicList).ToDataSource();”返回的是“List<>”类型,有点不解。
             }
         }
public static class DataSourceCreator
     {
         private static readonly Regex PropertNameRegex =
                new Regex(@"^[A-Za-z]+[A-Za-z1-9_]*$", RegexOptions.Singleline);
         public static List<object> ToDataSource(this IEnumerable<IDictionary> list)
         {
             IDictionary firstDict = null;
             bool hasData = false;
             foreach (IDictionary currentDict in list)
             {
                 hasData = true;
                 firstDict = currentDict;
                 break;
             }
------解决方案-------------------- 
yield 就是讲return结果加到返回的枚举中,比如
C# code
        private IEnumerable<int> Get_List()
        {
            for (int i = 0; i < 100; i++)
            {
                yield return i; //将i的值加到IEnumerable中
            }
        }
调用
IEnumerable<int> list = Get_List();
list中就是从0-100的100个值
------解决方案--------------------  探讨  yield 就是讲return结果加到返回的枚举中,比如 C# code         private IEnumerable<int> Get_List()         {             for (int i = 0; i < 100; i++)             {                 yield return i; //将i的值加到I……