标签:
1、WindowsLiveWriter.CNBlogs.CodeHighlighter
/// <summary> /// 遍历元素
/// </summary> /// <typeparam name="T"></typeparam> /// <param name="source"></param> /// <param name="action"></param> /// <returns></returns> public static IEnumerable<T> ForEach<T>(this IEnumerable<T> source, Action<T> action) { if (source == null) { throw new ArgumentNullException("source"); } if (action == null) { throw new ArgumentNullException("action"); } foreach (var item in source) { action(item); yield return item; } }
2、Windows Live Writer Source Code plugin for SyntaxHighlighter
/// <summary>
/// 将集合分段
/// 指定每段的长度range
/// </summary>
/// <typeparam name="T"></typeparam>
/// <param name="source"></param>
/// <param name="rangelength"></param>
/// <returns></returns>
public static IEnumerable<IEnumerable<T>> Subparagraph<T>(this IEnumerable<T> source, int rangelength)
{
if (rangelength < 1)
{
throw new Exception("rangelength参数应大于等于1");
}
if (source == null)
{
throw new ArgumentNullException("source");
}
var temp = source;
while (!temp.IsEmpty())
{
yield return temp.Take(rangelength);
temp = temp.Skip(rangelength);
}
}标签:
原文地址:http://www.cnblogs.com/Mr--Zhang/p/5647598.html