хранение логики фильтрации в конфигурации - применение фильтрации к DTO - PullRequest
0 голосов
/ 27 декабря 2018

Как мы можем передать какой-то фильтрующий делегат через конфигурацию?

У меня есть DTO, которое выглядит так:

public class Translation
{
    public DateTime DateTime {get;set;}
    public string TranslateTo {get;set;}
    public string TranslateFrom {get;set;}
}

Яиспользуя это DTO в моем методе

public void DoWork(Translation translation)
{
    WriteToDb(translation);
}

Я хотел бы иметь возможность применить фильтр и НЕ выполнять WriteToDb:

public void DoWork(Translation translation, TranslationFilter filter)
{
    //apply the filter to translation, and exit this function, otherwise continue:
    WriteToDb(translation);
}

Я хотел бы это TranslationFilterбыть чем-то, что можно настроить с помощью обычного JSON.

Как мы можем применить фильтрацию к полям DTO, позволяя настраивать эту логику фильтрации с помощью конфигурации JSON?

...