示例#1
0
            public static String AsExDelimitedString <T>(IEnumerable <T> tList, String itemDelimiter, String listDelimiter, params Func <T, String>[] tSelector) where T : class
            {
                IEnumerable <String> delimitedStringList = tList.Select(t => NameValueItemExtensions.AsExDelimitedString(t, itemDelimiter, tSelector));
                String delimitedString = String.Join(listDelimiter, delimitedStringList);

                return(delimitedString);
            }
示例#2
0
        public void Run()
        {
            Dbg("Menu : LinkItem<String, String>", GetMenus());

            IEnumerable <NotificationUser> users = GetUsers();
            String delimitedString = NameValueItemExtensions.AsDelimitedString(users, u => u.Name, u => u.Email);

            Dbg("Delimited String", delimitedString);
            Dbg("NameValueList", NameValueItemExtensions.AsNameValueList(delimitedString));

            IList <String> emails = users
                                    .Where(u => !String.IsNullOrEmpty(u.Email))
                                    .Select(u => u.Email.ToLowerInvariant())
                                    .GroupBy(e => e).Select(g => g.First())
                                    .ToList();

            Dbg("ExDelimitedString", NameValueItemExtensions.AsExDelimitedString(emails, ";"));
            Dbg("ExDelimitedString", NameValueItemExtensions.AsExDelimitedString(emails, ";", s => s.ToString()));
            Dbg("ExDelimitedString", NameValueItemExtensions.AsExDelimitedString(emails, ";", s => NameValueItemExtensions.AsExDelimitedString(s, ",", ss => ss.ToString())));

            Dbg("ExDelimitAggregateedString", emails.Aggregate(String.Empty, (p, nxt) => p + (p == String.Empty ? String.Empty : ";") + nxt));

            Dbg("ExDelimitedString", NameValueItemExtensions.AsExDelimitedString(users, ";", ",", u => u.Name, u => u.Email));
            Dbg("ExDelimitedString", NameValueItemExtensions.AsExDelimitedString(users, ";", ",", u => u.Name, u => u.Email, u => u.Name, u => u.Name));
        }
示例#3
0
 public static String AsDelimitedString <T>(IEnumerable <T> dataList, Func <T, String> nameSelector, Func <T, String> valueSelector) where T : class
 {
     return(NameValueItemExtensions.AsDelimitedString(NameValueItemExtensions.AsNameValueList(dataList, nameSelector, valueSelector)));
 }