В CQS (Разделение командного запроса) обычно имеют команды с возвращаемым значением «void» и запросами с типом возврата. (или так я узнал ...)CQS с параметром out
Теперь я задаюсь вопросом, действительно ли эта КОМАНДА действительна, потому что в основном мы делаем то же самое, что и в запросе, просто с ключевым словом «вне» вместо использования возврата Тип:
public class LogTrace{
public Guid CorrelationId { get; }
public DateTime Timestamp { get; }
}
public class Logger{
public void Log(string message, out LogTrace trace){
trace = new LogTrace(){//Fill properties};
//Log the message (+ trace)
}
}
Основываясь на вашем коде, это может быть действительно, но не очень хорошая практика. Используйте 'out'-keyword, если метод возвращает более одного значения. У вас не будет никаких преимуществ, реализующих его таким образом – lokusking