Я успешно модифицировал свое приложение, чтобы использовать активные отчеты Grapecity 14, в которых использовались только активные отчеты Grapecity 9. Прямо сейчас мне нужно поддерживать как 9, так и 14, поскольку у меня уже более 100 проектов, ссылающихся на 9.
Текущая реализация имеет общий проект отчета, имеет один базовый класс с необходимыми методами, необходимыми для создания отчета в формате PDF и Excel с использованием активных отчетов 9 и еще один базовый класс с репликацией кода для активных отчетов 14. Я направил этот базовый проект для создания любой отчет с использованием 9 и 14.
Below is an example to represent how my solution looks like
MyProjectSolution
BaseReportProject
BaseReport9.cs
BaseReport14.cs
ProjectReport1
Report.cs : BaseReport9.cs
ProjectReport2
Report.cs : BaseReport14.cs
Меня беспокоит, есть ли лучший подход для этого? Когда есть необходимость включить другую активную версию отчета в соответствии с текущей реализацией, мне нужно добавить еще один базовый класс.
Есть ли лучший подход для реализации этого типа требований?
Я не уверен, что это правильный вопрос. Если да, любое предложение приветствуется