1. C# / Говнокод #21476

    −21

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    38. 38
    39. 39
    40. 40
    41. 41
    42. 42
    43. 43
    44. 44
    45. 45
    46. 46
    47. 47
    48. 48
    49. 49
    50. 50
    51. 51
    52. 52
    53. 53
    54. 54
    55. 55
    56. 56
    private static Regex _OMatcher = new Regex("O=([^,]+)", RegexOptions.Compiled);
    private static Regex _CNMatcher = new Regex("CN=([^,]+)", RegexOptions.Compiled);
    
    
    private void InitView(IView view)
            {
                var cachedList = _UserCertStorage.FindAll();
                List<Cons<string, object>> list = new List<Cons<string,object>>();
                list.AddRange(cachedList.Select(x => 
                {
                    return Cons.Make<String, Object>(_CNMatcher.Match(x.SubjectName.Name).Groups[1].Value + " (" + _OMatcher.Match(x.SubjectName.Name).Groups[1].Value + ")", x);
                }));
                view.InitComboBox(UserNameID, list);
    
                int index = 1;
                foreach (var cert in cachedList)
                {
                    if (cert!=null)
                    {
                        Logger.Instance.Log(Logger.MessageType.Info, string.Format("{0} users certificate: {1}", index++, cert));
                    }
                }
                view.SetRadioButton(ConnectToServer, true);
            }
    
        public static class Cons
        {
            public static Cons<T1, T2> Make<T1, T2>(T1 first, T2 second)
            {
                return new Cons<T1, T2>(first, second);
            }
        }
    
        public class Cons<T1,T2>
        {
            private T1 _First;
            private T2 _Second;
    
            public T1 First { get { return _First; } set { _First = value; } }
            public T2 Second { get { return _Second; } set { _Second = value; } }
    
            public T1 Key { get { return First; } set { First = value; } }
            public T2 Value { get { return Second; } set { Second = value; } }
    
            public Cons()
            {
                _First = default(T1);
                _Second = default(T2);
            }
    
            public Cons(T1 first, T2 second)
            {
                _First = first;
                _Second = second;
            }
        }

    Реализация присвоения значений выпадающему списку для контрола ComboBox в функции InitView. Как вам?

    Запостил: TMShit, 18 Октября 2016

    Комментарии (16) RSS

    Добавить комментарий