WCF SOA - Как реализовать центральные сообщения для отображения в пользовательских приложениях - PullRequest
1 голос
/ 16 марта 2020

Этот вопрос скорее относится к разработке, чем к программированию.

Мы следуем архитектуре SOA со службами WCF, поскольку несколько веб-приложений используются несколькими веб-приложениями. Допустим, три веб-приложения 1, 2 и 3 используют веб-сервис1, т. Е. (Игнорируйте другие веб-сервисы по этому вопросу)

WebApp1 > consumes > WebService1

WebApp2 > consumes > WebService1

WebApp3 > consumes > WebService1

Все три веб-приложения используют одну и ту же функцию CreateUser() из WebService1. Служба вернет сообщение об успешном завершении или сообщение об ошибке в зависимости от запроса вставки в SQL База данных сервера.

Вот критическая точка, эти сообщения об успехе или ошибке возвращаются из базы данных. Таблица базы данных выступает в качестве центрального хранилища сообщений для отображения во всех приложениях. Есть несколько приложений с несколькими сообщениями. Но давайте сосредоточимся на 3 приложениях с 2 сообщениями. Структура таблицы выглядит следующим образом:



ApplicationID         MessageID            MessageText



   1                      5                User Saved Successfully.


   2                      6                User Inserted Successfully.


   3                      7                Record Saved Successfully.


   1                      8                User save failed.


   2                      9                User insert failed.


   3                      10               Record save failed.


Каждое приложение может иметь разные MessageID с разным текстом, одно для успеха и одно для ошибки. Я хочу возвращать разные сообщения на основе данного ApplicationID. Каждое приложение передает свой ApplicationID в запросе на CreateUser().

Как написать эту функцию для возврата соответствующего текста сообщения на основе ApplicationID.

Нужно ли менять дизайн стола или его можно реализовать другим способом?

1 Ответ

0 голосов
/ 16 марта 2020

Да, я так думаю.

Добавьте сообщение logi c в веб-приложения, а не в базу данных. Затем webService1 просто возвращает, был ли пользователь создан или нет, и каждое приложение отображает все, что хочет. Тогда вам не нужно исправлять вашу базу данных, если они хотят изменить содержимое или исправить орфографические ошибки.

...