SCSF Services вопрос

Быстрый вопрос (и мой последний сегодня о SCSF) о том, для чего предназначены Сервисы.

Сервисы существуют в WorkItem, поэтому я предполагаю, что они должны предоставлять услуги пользовательского интерфейса специально. Только код, который я ненавижу в данный момент, использует их для бизнес-сервисов, которые полностью отделяют MVP, особенно от M от VP.

1 ответ

Решение

Я знаю, что вы, вероятно, даже не будете заботиться об ответе на данный момент, но это мой первый шанс ответить на что-то в SO, так что здесь все в порядке.

Я использую SCSF уже около 6 месяцев, поэтому я ни в коем случае не эксперт, но несколько вещей, которыми я в основном пользуюсь Module Services для:

  • При выполнении вызова "бизнес-службы" (который, как я полагаю, из вашего вопроса означает вызов в какое-либо хранилище данных или вызов веб-службы и т. Д.), Вы можете использовать службу для добавления любых дополнительных данных, которые могут быть не связаны напрямую. к бизнес-логике, но необходимо быть настойчивым при обращении к базе данных. Один из примеров, который я могу предоставить, - это присоединение учетных данных пользователя, вошедшего в систему, к вызову веб-службы или базы данных для ведения журнала аудита. Вы звоните в Службу от своего докладчика, который добавляет любую дополнительную информацию и переводит вызов на следующий уровень.

  • Другое использование Сервисов - абстрагирование любой реализации UIExtensions от ваших модулей. Например, если вы используете ленту, у вас может быть услуга, которая будет внедрена в ваш
    бизнес-модули с такими методами, как "AddRibbonButton()" или
    "AddRibbonGroup()", который могут вызывать ваши модули для добавления необходимых
    элементы пользовательского интерфейса при загрузке, не заботясь о том, как
    это сделано.

Надеюсь, это поможет!

Другие вопросы по тегам