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

    −41

    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
    public string GetValue(string value)
        {
            var displayOptions = (DisplayOptions)ViewBag.Options;
            var defaultCulture = ContentHelper.GetDefaultCulture();
            var currentCulture = UserHelper.GetSessionCulture() ?? defaultCulture;
    
            var domainValue = Model.Domain.Values.FirstOrDefault(v => v.Value.ToLower() == value.ToLower());
    
            var text = domainValue == null ? value : (domainValue?.Translations.Where(t => currentCulture.Equals(t.Culture)).Select(t => t.Text).FirstOrDefault() ?? domainValue.Text);
            var result = text;
    
            if (!string.IsNullOrEmpty(Model.Domain.DisplayPrefix))
            {
                result = string.Format("{0} {1}", Model.Domain.DisplayPrefix, text);
            }
    
            if (!string.IsNullOrEmpty(Model.Domain.DisplayPrefix) && !string.IsNullOrEmpty(Model.Domain.DisplaySuffix))
            {
                result = string.Format("{0} {1} {2}", Model.Domain.DisplayPrefix, text, Model.Domain.DisplaySuffix);
            }
    
            if (!string.IsNullOrEmpty(Model.Domain.DisplaySuffix))
            {
                result = string.Format("{0} {1} {2}", Model.Domain.DisplayPrefix, text, Model.Domain.DisplaySuffix);
            }
    
            return String.Format("{0}{1}{2}{3}"
                , displayOptions.StartTag != null && displayOptions.EndTag != null ? (displayOptions.StartTag ?? string.Empty) : string.Empty
                , displayOptions.ShowDomainAlternative ? @Html.DisplayForDomainAlternative(domainValue) : new MvcHtmlString(string.Empty)
                , displayOptions.ShowDomainText ? result : string.Empty
                , displayOptions.StartTag != null && displayOptions.EndTag != null ? (displayOptions.EndTag ?? string.Empty) : string.Empty);
        }

    Так безжалостно получали result чтобы в конце заменить его на пустую сроку. Не говоря уже про общее построение метода и как себя ненавидел автор, добавляя еще одну строку кода в String.Format.

    Запостил: pipjaka, 27 Января 2017

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

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