Кто-нибудь знает какой-либо способ упорядочить операторы журналирования более удобно?
Я думаю, что такого способа нет, но, ну, вот небольшой пример:
// Take the longest path in the graph and convert it into the
// image series, note that we project every element from the
// sequence into the image path so that 'new Series(...)' constructor
// could be used.
var paths = EnumerateSimpleAndLoopedPaths().ToList();
logger.Log(Something1);
if (paths.Any())
{
// Take the longest possible path.
var selectedPath = paths.OrderBy(x => x.Count()).Last();
logger.Log(Something2);
var imagesForSelectedPath = selectedPath.SelectMany(...
Очевидно,эти logger.Log
или Log
или какие-либо операторы похожи на мусор для основной части кода, может быть, есть умный способ куда-то их взять?
Я знаю, что есть некоторые хорошиепакеты, такие как PostSharp
, что позволяет вести запись до и после - но что, если функции должны регистрировать некоторый промежуточный результат своей работы ?
Или это просто проблема декомпозициии я должен сделать все более разложенным, чтобы я мог пометить все эти регистрируемые записи как [Loggable]
?
Любые предложения будут оценены. Что вы делаете со входом в свой код?