Architect's Log

I'm a Cloud Architect. I'm highly motivated to reduce toils with driving DevOps.

配列の要素をカンマで連結した文字列を拡張メソッドで取得する

配列の要素をカンマで連結する拡張メソッドを定義すると、ログ出力時などに便利です。System.Arrayクラスを拡張すると全ての配列で使用することができます。

using System;

namespace Extensions {
    public static class SystemExtensions {
        /// <summary>
        /// 配列の文字列表現を取得します。
        /// </summary>
        /// <param name="self">配列のインスタンス。</param>
        /// <returns>取得した文字列。</returns>
        public static string ToText(this Array self) {
            StringBuilder b = new StringBuilder();
            foreach(object o in self) {
                b.AppendFormat("{0},", o);
            }
            b.Length--;
            return b.ToString();
        }
    }
}