Generic остановить цепочку вызовов.
От: #John Европа https://github.com/ichensky
Дата: 29.05.17 15:48
Оценка:
Здравствуйте,
А можно ли как-то остановить цепочку вызовов методов `go`?:
 public class value
    {
        public int x;
    }
    public class b
    {
        public value value;

    }
    public static class a
    {
        public static b go(this b model, int x)
        {

            if (model.value == null && x == 5)
            {
                model.value = new value { x = x };
            }

            return model;
        }
    }

    public class Program
    {
        public static void Main()
        {
            // где-то в коде
            var b = new b();
            var o = b
                .go(4)
                .go(5) // Если в `model` есть какой-то объект, 
                       // дальше `go` не должны вызываться, а вернуть `model` объект
                .go(10)
                .go(20)
                ;
        }
    }
Підтримати Україну у боротьбі з країною-терористом.

https://prytulafoundation.org/
https://u24.gov.ua/

Слава Збройним Силам України!!! Героям слава!!!
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.